diff options
author | Sam Mortimer <sam@mortimer.me.uk> | 2017-09-09 00:42:35 -0700 |
---|---|---|
committer | Sam Mortimer <sam@mortimer.me.uk> | 2017-10-11 23:17:36 -0700 |
commit | 0912ee88c7ce0ec548089ceb2b4ed8d7f881c99f (patch) | |
tree | 6324fb893d5756215699f6e559ac527bd7848c2c | |
parent | 6904e77152df9365c627287013ce79e0b491da1f (diff) | |
download | lineage-sdk-0912ee88c7ce0ec548089ceb2b4ed8d7f881c99f.tar.gz lineage-sdk-0912ee88c7ce0ec548089ceb2b4ed8d7f881c99f.tar.bz2 lineage-sdk-0912ee88c7ce0ec548089ceb2b4ed8d7f881c99f.zip |
Remove theme support
Change-Id: I41f1d0fa1ecc98c2872d2569534e6f2ef686a726
134 files changed, 1 insertions, 6285 deletions
@@ -25,7 +25,7 @@ LOCAL_PATH := $(call my-dir) lineage_platform_res := APPS/org.lineageos.platform-res_intermediates/src # List of packages used in lineage-api-stubs -lineage_stub_packages := lineageos.alarmclock:lineageos.app:lineageos.content:lineageos.externalviews:lineageos.hardware:lineageos.media:lineageos.os:lineageos.preference:lineageos.profiles:lineageos.providers:lineageos.platform:lineageos.power:lineageos.themes:lineageos.util:lineageos.weather:lineageos.weatherservice +lineage_stub_packages := lineageos.alarmclock:lineageos.app:lineageos.content:lineageos.externalviews:lineageos.hardware:lineageos.media:lineageos.os:lineageos.preference:lineageos.profiles:lineageos.providers:lineageos.platform:lineageos.power:lineageos.util:lineageos.weather:lineageos.weatherservice # The LineageOS Platform Framework Library # ============================================================ diff --git a/api/lineage_current.txt b/api/lineage_current.txt index eb4dabfe..2a92efef 100644 --- a/api/lineage_current.txt +++ b/api/lineage_current.txt @@ -404,10 +404,6 @@ package lineageos.content { ctor public Intent(); field public static final java.lang.String ACTION_PROTECTED = "lineageos.intent.action.PACKAGE_PROTECTED"; field public static final java.lang.String ACTION_PROTECTED_CHANGED = "lineageos.intent.action.PROTECTED_COMPONENT_UPDATE"; - field public static final java.lang.String ACTION_THEME_INSTALLED = "lineageos.intent.action.THEME_INSTALLED"; - field public static final java.lang.String ACTION_THEME_REMOVED = "lineageos.intent.action.THEME_REMOVED"; - field public static final java.lang.String ACTION_THEME_UPDATED = "lineageos.intent.action.THEME_UPDATED"; - field public static final java.lang.String CATEGORY_THEME_PACKAGE_INSTALLED_STATE_CHANGE = "lineageos.intent.category.THEME_PACKAGE_INSTALL_STATE_CHANGE"; field public static final java.lang.String EXTRA_PROTECTED_COMPONENTS = "lineageos.intent.extra.PACKAGE_PROTECTED_COMPONENTS"; field public static final java.lang.String EXTRA_PROTECTED_STATE = "lineageos.intent.extra.PACKAGE_PROTECTED_STATE"; field public static final java.lang.String URI_SCHEME_PACKAGE = "package"; @@ -710,7 +706,6 @@ package lineageos.platform { public static final class Manifest.permission { ctor public Manifest.permission(); field public static final java.lang.String ACCESS_APP_SUGGESTIONS = "lineageos.permission.ACCESS_APP_SUGGESTIONS"; - field public static final java.lang.String ACCESS_THEME_MANAGER = "lineageos.permission.ACCESS_THEME_MANAGER"; field public static final java.lang.String ACCESS_WEATHER_MANAGER = "lineageos.permission.ACCESS_WEATHER_MANAGER"; field public static final java.lang.String BIND_WEATHER_PROVIDER_SERVICE = "lineageos.permission.BIND_WEATHER_PROVIDER_SERVICE"; field public static final java.lang.String HARDWARE_ABSTRACTION_ACCESS = "lineageos.permission.HARDWARE_ABSTRACTION_ACCESS"; @@ -729,14 +724,12 @@ package lineageos.platform { field public static final java.lang.String READ_ALARMS = "lineageos.permission.READ_ALARMS"; field public static final java.lang.String READ_DATAUSAGE = "lineageos.permission.READ_DATAUSAGE"; field public static final java.lang.String READ_MSIM_PHONE_STATE = "lineageos.permission.READ_MSIM_PHONE_STATE"; - field public static final java.lang.String READ_THEMES = "lineageos.permission.READ_THEMES"; field public static final java.lang.String READ_WEATHER = "lineageos.permission.READ_WEATHER"; field public static final java.lang.String THIRD_PARTY_KEYGUARD = "lineageos.permission.THIRD_PARTY_KEYGUARD"; field public static final java.lang.String WRITE_ALARMS = "lineageos.permission.WRITE_ALARMS"; field public static final java.lang.String WRITE_DATAUSAGE = "lineageos.permission.WRITE_DATAUSAGE"; field public static final java.lang.String WRITE_SECURE_SETTINGS = "lineageos.permission.WRITE_SECURE_SETTINGS"; field public static final java.lang.String WRITE_SETTINGS = "lineageos.permission.WRITE_SETTINGS"; - field public static final java.lang.String WRITE_THEMES = "lineageos.permission.WRITE_THEMES"; field public static final java.lang.String WRITE_WEATHER = "lineageos.permission.WRITE_WEATHER"; } @@ -1287,146 +1280,6 @@ package lineageos.providers { field public static final java.lang.String _ID = "_id"; } - public class ThemesContract { - ctor public ThemesContract(); - field public static final java.lang.String AUTHORITY = "com.lineageos.themes"; - field public static final android.net.Uri AUTHORITY_URI; - } - - public static class ThemesContract.MixnMatchColumns { - ctor public ThemesContract.MixnMatchColumns(); - method public static java.lang.String componentToImageColName(java.lang.String); - method public static java.lang.String componentToMixNMatchKey(java.lang.String); - method public static java.lang.String mixNMatchKeyToComponent(java.lang.String); - field public static final java.lang.String COL_COMPONENT_ID = "component_id"; - field public static final java.lang.String COL_KEY = "key"; - field public static final java.lang.String COL_PREV_VALUE = "previous_value"; - field public static final java.lang.String COL_UPDATE_TIME = "update_time"; - field public static final java.lang.String COL_VALUE = "value"; - field public static final android.net.Uri CONTENT_URI; - field public static final java.lang.String KEY_ALARM = "mixnmatch_alarm"; - field public static final java.lang.String KEY_BOOT_ANIM = "mixnmatch_boot_anim"; - field public static final java.lang.String KEY_FONT = "mixnmatch_font"; - field public static final java.lang.String KEY_HOMESCREEN = "mixnmatch_homescreen"; - field public static final java.lang.String KEY_ICONS = "mixnmatch_icons"; - field public static final java.lang.String KEY_LIVE_LOCK_SCREEN = "mixnmatch_live_lock_screen"; - field public static final java.lang.String KEY_LOCKSCREEN = "mixnmatch_lockscreen"; - field public static final java.lang.String KEY_NAVIGATION_BAR = "mixnmatch_navigation_bar"; - field public static final java.lang.String KEY_NOTIFICATIONS = "mixnmatch_notifications"; - field public static final java.lang.String KEY_OVERLAYS = "mixnmatch_overlays"; - field public static final java.lang.String KEY_RINGTONE = "mixnmatch_ringtone"; - field public static final java.lang.String KEY_STATUS_BAR = "mixnmatch_status_bar"; - field public static final java.lang.String[] ROWS; - } - - public static class ThemesContract.PreviewColumns { - ctor public ThemesContract.PreviewColumns(); - field public static final android.net.Uri APPLIED_URI; - field public static final java.lang.String BOOTANIMATION_THUMBNAIL = "bootanimation_thumbnail"; - field public static final java.lang.String COL_KEY = "key"; - field public static final java.lang.String COL_VALUE = "value"; - field public static final android.net.Uri COMPONENTS_URI; - field public static final java.lang.String COMPONENT_ID = "component_id"; - field public static final android.net.Uri CONTENT_URI; - field public static final java.lang.String ICON_PREVIEW_1 = "icon_preview_1"; - field public static final java.lang.String ICON_PREVIEW_2 = "icon_preview_2"; - field public static final java.lang.String ICON_PREVIEW_3 = "icon_preview_3"; - field public static final java.lang.String LIVE_LOCK_SCREEN_PREVIEW = "live_lock_screen_preview"; - field public static final java.lang.String LIVE_LOCK_SCREEN_THUMBNAIL = "live_lock_screen_thumbnail"; - field public static final java.lang.String LOCK_WALLPAPER_PREVIEW = "lock_wallpaper_preview"; - field public static final java.lang.String LOCK_WALLPAPER_THUMBNAIL = "lock_wallpaper_thumbnail"; - field public static final java.lang.String NAVBAR_BACKGROUND = "navbar_background"; - field public static final java.lang.String NAVBAR_BACK_BUTTON = "navbar_back_button"; - field public static final java.lang.String NAVBAR_HOME_BUTTON = "navbar_home_button"; - field public static final java.lang.String NAVBAR_RECENT_BUTTON = "navbar_recent_button"; - field public static final java.lang.String STATUSBAR_BACKGROUND = "statusbar_background"; - field public static final java.lang.String STATUSBAR_BATTERY_CIRCLE = "statusbar_battery_circle"; - field public static final java.lang.String STATUSBAR_BATTERY_LANDSCAPE = "statusbar_battery_landscape"; - field public static final java.lang.String STATUSBAR_BATTERY_PORTRAIT = "statusbar_battery_portrait"; - field public static final java.lang.String STATUSBAR_BLUETOOTH_ICON = "statusbar_bluetooth_icon"; - field public static final java.lang.String STATUSBAR_CLOCK_TEXT_COLOR = "statusbar_clock_text_color"; - field public static final java.lang.String STATUSBAR_SIGNAL_ICON = "statusbar_signal_icon"; - field public static final java.lang.String STATUSBAR_WIFI_COMBO_MARGIN_END = "wifi_combo_margin_end"; - field public static final java.lang.String STATUSBAR_WIFI_ICON = "statusbar_wifi_icon"; - field public static final java.lang.String STYLE_PREVIEW = "style_preview"; - field public static final java.lang.String STYLE_THUMBNAIL = "style_thumbnail"; - field public static final java.lang.String THEME_ID = "theme_id"; - field public static final java.lang.String[] VALID_KEYS; - field public static final java.lang.String WALLPAPER_FULL = "wallpaper_full"; - field public static final java.lang.String WALLPAPER_PREVIEW = "wallpaper_preview"; - field public static final java.lang.String WALLPAPER_THUMBNAIL = "wallpaper_thumbnail"; - field public static final java.lang.String _ID = "_id"; - } - - public static class ThemesContract.ThemeMixColumns { - ctor public ThemesContract.ThemeMixColumns(); - field public static final android.net.Uri CONTENT_URI; - field public static final android.net.Uri PREVIEWS_URI; - field public static final java.lang.String TITLE = "title"; - field public static final java.lang.String _ID = "_id"; - } - - public static class ThemesContract.ThemeMixEntryColumns { - ctor public ThemesContract.ThemeMixEntryColumns(); - field public static final java.lang.String COMPONENT_ID = "component_id"; - field public static final java.lang.String COMPONENT_TYPE = "component_type"; - field public static final android.net.Uri CONTENT_URI; - field public static final java.lang.String IS_INSTALLED = "installed"; - field public static final java.lang.String PACKAGE_NAME = "package_name"; - field public static final java.lang.String THEME_MIX_ID = "theme_mix_id"; - field public static final java.lang.String THEME_NAME = "theme_name"; - field public static final java.lang.String _ID = "_id"; - } - - public static class ThemesContract.ThemesColumns { - ctor public ThemesContract.ThemesColumns(); - field public static final java.lang.String AUTHOR = "author"; - field public static final java.lang.String BOOT_ANIM_URI = "bootanim_uri"; - field public static final android.net.Uri CONTENT_URI; - field public static final java.lang.String DATE_CREATED = "created"; - field public static final java.lang.String FONT_URI = "font_uri"; - field public static final java.lang.String HOMESCREEN_URI = "homescreen_uri"; - field public static final java.lang.String ICON_URI = "icon_uri"; - field public static final java.lang.String INSTALL_STATE = "install_state"; - field public static final java.lang.String INSTALL_TIME = "install_time"; - field public static final java.lang.String IS_DEFAULT_THEME = "is_default_theme"; - field public static final java.lang.String IS_LEGACY_ICONPACK = "is_legacy_iconpack"; - field public static final java.lang.String IS_LEGACY_THEME = "is_legacy_theme"; - field public static final java.lang.String LAST_UPDATE_TIME = "updateTime"; - field public static final java.lang.String LOCKSCREEN_URI = "lockscreen_uri"; - field public static final java.lang.String MODIFIES_ALARMS = "mods_alarms"; - field public static final java.lang.String MODIFIES_BOOT_ANIM = "mods_bootanim"; - field public static final java.lang.String MODIFIES_FONTS = "mods_fonts"; - field public static final java.lang.String MODIFIES_ICONS = "mods_icons"; - field public static final java.lang.String MODIFIES_LAUNCHER = "mods_homescreen"; - field public static final java.lang.String MODIFIES_LIVE_LOCK_SCREEN = "mods_live_lock_screen"; - field public static final java.lang.String MODIFIES_LOCKSCREEN = "mods_lockscreen"; - field public static final java.lang.String MODIFIES_NAVIGATION_BAR = "mods_navigation_bar"; - field public static final java.lang.String MODIFIES_NOTIFICATIONS = "mods_notifications"; - field public static final java.lang.String MODIFIES_OVERLAYS = "mods_overlays"; - field public static final java.lang.String MODIFIES_RINGTONES = "mods_ringtones"; - field public static final java.lang.String MODIFIES_STATUS_BAR = "mods_status_bar"; - field public static final java.lang.String OVERLAYS_URI = "overlays_uri"; - field public static final java.lang.String PKG_NAME = "pkg_name"; - field public static final java.lang.String PRESENT_AS_THEME = "present_as_theme"; - field public static final java.lang.String PRIMARY_COLOR = "primary_color"; - field public static final java.lang.String SECONDARY_COLOR = "secondary_color"; - field public static final java.lang.String STATUSBAR_URI = "status_uri"; - field public static final java.lang.String STYLE_URI = "style_uri"; - field public static final java.lang.String TARGET_API = "target_api"; - field public static final java.lang.String TITLE = "title"; - field public static final java.lang.String WALLPAPER_URI = "wallpaper_uri"; - field public static final java.lang.String _ID = "_id"; - } - - public static class ThemesContract.ThemesColumns.InstallState { - ctor public ThemesContract.ThemesColumns.InstallState(); - field public static final int INSTALLED = 3; // 0x3 - field public static final int INSTALLING = 1; // 0x1 - field public static final int UNKNOWN = 0; // 0x0 - field public static final int UPDATING = 2; // 0x2 - } - public class WeatherContract { ctor public WeatherContract(); field public static final java.lang.String AUTHORITY = "org.lineageos.weather"; @@ -1518,100 +1371,6 @@ package lineageos.providers { } -package lineageos.themes { - - public final class ThemeChangeRequest implements android.os.Parcelable { - method public int describeContents(); - method public java.lang.String getAlarmThemePackageName(); - method public java.lang.String getBootanimationThemePackageName(); - method public java.lang.String getFontThemePackageName(); - method public java.lang.String getIconsThemePackageName(); - method public java.lang.String getLiveLockScreenThemePackageName(); - method public java.lang.String getLockWallpaperThemePackageName(); - method public java.lang.String getNavBarThemePackageName(); - method public java.lang.String getNotificationThemePackageName(); - method public int getNumChangesRequested(); - method public java.lang.String getOverlayThemePackageName(); - method public final java.util.Map<java.lang.String, java.lang.String> getPerAppOverlays(); - method public lineageos.themes.ThemeChangeRequest.RequestType getReqeustType(); - method public java.lang.String getRingtoneThemePackageName(); - method public java.lang.String getStatusBarThemePackageName(); - method public final java.util.Map<java.lang.String, java.lang.String> getThemeComponentsMap(); - method public long getWallpaperId(); - method public java.lang.String getWallpaperThemePackageName(); - method public void writeToParcel(android.os.Parcel, int); - field public static final android.os.Parcelable.Creator<lineageos.themes.ThemeChangeRequest> CREATOR; - field public static final int DEFAULT_WALLPAPER_ID = -1; // 0xffffffff - } - - public static class ThemeChangeRequest.Builder { - ctor public ThemeChangeRequest.Builder(); - ctor public ThemeChangeRequest.Builder(android.content.res.ThemeConfig); - method public lineageos.themes.ThemeChangeRequest build(); - method public lineageos.themes.ThemeChangeRequest.Builder setAlarm(java.lang.String); - method public lineageos.themes.ThemeChangeRequest.Builder setAppOverlay(java.lang.String, java.lang.String); - method public lineageos.themes.ThemeChangeRequest.Builder setBootanimation(java.lang.String); - method public lineageos.themes.ThemeChangeRequest.Builder setComponent(java.lang.String, java.lang.String); - method public lineageos.themes.ThemeChangeRequest.Builder setFont(java.lang.String); - method public lineageos.themes.ThemeChangeRequest.Builder setIcons(java.lang.String); - method public lineageos.themes.ThemeChangeRequest.Builder setLiveLockScreen(java.lang.String); - method public lineageos.themes.ThemeChangeRequest.Builder setLockWallpaper(java.lang.String); - method public lineageos.themes.ThemeChangeRequest.Builder setNavBar(java.lang.String); - method public lineageos.themes.ThemeChangeRequest.Builder setNotification(java.lang.String); - method public lineageos.themes.ThemeChangeRequest.Builder setOverlay(java.lang.String); - method public lineageos.themes.ThemeChangeRequest.Builder setRequestType(lineageos.themes.ThemeChangeRequest.RequestType); - method public lineageos.themes.ThemeChangeRequest.Builder setRingtone(java.lang.String); - method public lineageos.themes.ThemeChangeRequest.Builder setStatusBar(java.lang.String); - method public lineageos.themes.ThemeChangeRequest.Builder setWallpaper(java.lang.String); - method public lineageos.themes.ThemeChangeRequest.Builder setWallpaperId(long); - } - - public static final class ThemeChangeRequest.RequestType extends java.lang.Enum { - method public static lineageos.themes.ThemeChangeRequest.RequestType valueOf(java.lang.String); - method public static final lineageos.themes.ThemeChangeRequest.RequestType[] values(); - enum_constant public static final lineageos.themes.ThemeChangeRequest.RequestType THEME_REMOVED; - enum_constant public static final lineageos.themes.ThemeChangeRequest.RequestType THEME_RESET; - enum_constant public static final lineageos.themes.ThemeChangeRequest.RequestType THEME_UPDATED; - enum_constant public static final lineageos.themes.ThemeChangeRequest.RequestType USER_REQUEST; - enum_constant public static final lineageos.themes.ThemeChangeRequest.RequestType USER_REQUEST_MIXNMATCH; - } - - public class ThemeManager { - method public deprecated void addClient(lineageos.themes.ThemeManager.ThemeChangeListener); - method public void applyDefaultTheme(); - method public static lineageos.themes.ThemeManager getInstance(android.content.Context); - method public lineageos.themes.ThemeChangeRequest.RequestType getLastThemeChangeRequestType(); - method public long getLastThemeChangeTime(); - method public int getProgress(); - method public boolean isThemeApplying(); - method public boolean isThemeBeingProcessed(java.lang.String); - method public deprecated void onClientDestroyed(lineageos.themes.ThemeManager.ThemeChangeListener); - method public deprecated void onClientPaused(lineageos.themes.ThemeManager.ThemeChangeListener); - method public deprecated void onClientResumed(lineageos.themes.ThemeManager.ThemeChangeListener); - method public boolean processThemeResources(java.lang.String); - method public void registerProcessingListener(lineageos.themes.ThemeManager.ThemeProcessingListener); - method public void registerThemeChangeListener(lineageos.themes.ThemeManager.ThemeChangeListener); - method public deprecated void removeClient(lineageos.themes.ThemeManager.ThemeChangeListener); - method public void requestThemeChange(java.lang.String, java.util.List<java.lang.String>); - method public void requestThemeChange(java.lang.String, java.util.List<java.lang.String>, boolean); - method public void requestThemeChange(java.util.Map<java.lang.String, java.lang.String>); - method public void requestThemeChange(java.util.Map<java.lang.String, java.lang.String>, boolean); - method public void requestThemeChange(lineageos.themes.ThemeChangeRequest, boolean); - method public void unregisterProcessingListener(lineageos.themes.ThemeManager.ThemeProcessingListener); - method public void unregisterThemeChangeListener(lineageos.themes.ThemeManager.ThemeChangeListener); - } - - public static abstract interface ThemeManager.ThemeChangeListener { - method public abstract void onFinish(boolean); - method public abstract void onProgress(int); - } - - public static abstract interface ThemeManager.ThemeProcessingListener { - method public abstract void onFinishedProcessing(java.lang.String); - } - -} - package lineageos.util { public class ColorUtils { diff --git a/host/migration/src/LineageSettings.java b/host/migration/src/LineageSettings.java index d2b06bab..28c18969 100644 --- a/host/migration/src/LineageSettings.java +++ b/host/migration/src/LineageSettings.java @@ -775,24 +775,6 @@ public final class LineageSettings { public static final String BUTTON_BRIGHTNESS = "button_brightness"; /** - * A '|' delimited list of theme components to apply from the default theme on first boot. - * Components can be one or more of the "mods_XXXXXXX" found in - * {@link ThemesContract$ThemesColumns}. Leaving this field blank assumes all components - * will be applied. - * - * ex: mods_icons|mods_overlays|mods_homescreen - * - * @hide - */ - public static final String DEFAULT_THEME_COMPONENTS = "default_theme_components"; - - /** - * Default theme to use. If empty, use holo. - * @hide - */ - public static final String DEFAULT_THEME_PACKAGE = "default_theme_package"; - - /** * Developer options - Navigation Bar show switch * @hide */ @@ -806,11 +788,6 @@ public final class LineageSettings { public static final String KEYBOARD_BRIGHTNESS = "keyboard_brightness"; /** - * Default theme config name - */ - public static final String NAME_THEME_CONFIG = "name_theme_config"; - - /** * Custom navring actions * @hide */ @@ -1009,17 +986,6 @@ public final class LineageSettings { * @hide */ public static final String ADVANCED_REBOOT = "advanced_reboot"; - - /** - * This will be set to the system's current theme API version when ThemeService starts. - * It is useful for when an upgrade from one version of Lineage to another occurs. - * For example, after a user upgrades from CM11 to CM12, the value of this field - * might be 19. ThemeService would then change the value to 21. This is useful - * when an API change breaks a theme. Themeservice can identify old themes and - * unapply them from the system. - * @hide - */ - public static final String THEME_PREV_BOOT_API_LEVEL = "theme_prev_boot_api_level"; // endregion /** @@ -1029,8 +995,6 @@ public final class LineageSettings { LineageSettings.Secure.ADVANCED_MODE, LineageSettings.Secure.BUTTON_BACKLIGHT_TIMEOUT, LineageSettings.Secure.BUTTON_BRIGHTNESS, - LineageSettings.Secure.DEFAULT_THEME_COMPONENTS, - LineageSettings.Secure.DEFAULT_THEME_PACKAGE, LineageSettings.Secure.DEV_FORCE_SHOW_NAVBAR, LineageSettings.Secure.KEYBOARD_BRIGHTNESS, LineageSettings.Secure.POWER_MENU_ACTIONS, @@ -1050,7 +1014,6 @@ public final class LineageSettings { LineageSettings.Secure.PROTECTED_COMPONENTS, LineageSettings.Secure.LIVE_DISPLAY_COLOR_MATRIX, LineageSettings.Secure.ADVANCED_REBOOT, - LineageSettings.Secure.THEME_PREV_BOOT_API_LEVEL, LineageSettings.Secure.LOCKSCREEN_TARGETS, LineageSettings.Secure.RING_HOME_BUTTON_BEHAVIOR, LineageSettings.Secure.PRIVACY_GUARD_DEFAULT, diff --git a/lineage/lib/main/java/org/lineageos/platform/internal/AppsFailureReceiver.java b/lineage/lib/main/java/org/lineageos/platform/internal/AppsFailureReceiver.java deleted file mode 100644 index 2b994407..00000000 --- a/lineage/lib/main/java/org/lineageos/platform/internal/AppsFailureReceiver.java +++ /dev/null @@ -1,120 +0,0 @@ -/* - * Copyright (C) 2010, T-Mobile USA, Inc. - * Copyright (C) 2015-2016 The CyanogenMod Project - * - * 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. - */ -package org.lineageos.platform.internal; - -import android.app.Notification; -import android.app.NotificationManager; -import android.content.BroadcastReceiver; -import android.content.Context; -import android.content.Intent; -import android.content.res.ThemeConfig; -import android.os.RemoteException; -import android.os.ServiceManager; -import android.os.SystemClock; - -import org.lineageos.internal.util.ThemeUtils; - -import lineageos.app.LineageContextConstants; -import lineageos.themes.IThemeService; -import lineageos.themes.ThemeChangeRequest; -import lineageos.themes.ThemeChangeRequest.RequestType; - -import static lineageos.content.Intent.ACTION_APP_FAILURE; - -public class AppsFailureReceiver extends BroadcastReceiver { - - private static final int FAILURES_THRESHOLD = 3; - private static final int EXPIRATION_TIME_IN_MILLISECONDS = 30000; // 30 seconds - - private int mFailuresCount = 0; - private long mStartTime = 0; - - // This function implements the following logic. - // If after a theme was applied the number of application launch failures - // at any moment was equal to FAILURES_THRESHOLD - // in less than EXPIRATION_TIME_IN_MILLISECONDS - // the default theme is applied unconditionally. - @Override - public void onReceive(Context context, Intent intent) { - String action = intent.getAction(); - final long currentTime = SystemClock.uptimeMillis(); - if (ACTION_APP_FAILURE.equals(action)) { - if (currentTime - mStartTime > EXPIRATION_TIME_IN_MILLISECONDS) { - // reset both the count and the timer - mStartTime = currentTime; - mFailuresCount = 0; - } - if (mFailuresCount <= FAILURES_THRESHOLD) { - mFailuresCount++; - if (mFailuresCount == FAILURES_THRESHOLD) { - // let the theme manager take care of getting us back on the default theme - IThemeService tm = IThemeService.Stub.asInterface(ServiceManager - .getService(LineageContextConstants.LINEAGE_THEME_SERVICE)); - final String themePkgName = ThemeConfig.SYSTEM_DEFAULT; - ThemeChangeRequest.Builder builder = new ThemeChangeRequest.Builder(); - builder.setOverlay(themePkgName) - .setStatusBar(themePkgName) - .setNavBar(themePkgName) - .setIcons(themePkgName) - .setFont(themePkgName) - .setBootanimation(themePkgName) - .setWallpaper(themePkgName) - .setLockWallpaper(themePkgName) - .setAlarm(themePkgName) - .setNotification(themePkgName) - .setRingtone(themePkgName) - .setRequestType(RequestType.THEME_RESET); - // Since we are resetting everything to the system theme, we can have the - // theme service remove all per app themes without setting them explicitly :) - try { - tm.requestThemeChange(builder.build(), true); - postThemeResetNotification(context); - } catch (RemoteException e) { - /* ignore */ - } - } - } - } else if (ThemeUtils.ACTION_THEME_CHANGED.equals(action)) { - // reset both the count and the timer - mStartTime = currentTime; - mFailuresCount = 0; - } - } - - /** - * Posts a notification to let the user know their theme was reset - * @param context - */ - private void postThemeResetNotification(Context context) { - NotificationManager nm = - (NotificationManager) context.getSystemService(Context.NOTIFICATION_SERVICE); - String title = context.getString(R.string.theme_reset_notification_title); - String body = context.getString(R.string.theme_reset_notification_message); - Notification notice = new Notification.Builder(context) - .setAutoCancel(true) - .setOngoing(false) - .setContentTitle(title) - .setContentText(body) - .setStyle(new Notification.BigTextStyle().bigText(body)) - .setSmallIcon(android.R.drawable.stat_notify_error) - .setWhen(System.currentTimeMillis()) - .setCategory(Notification.CATEGORY_SYSTEM) - .setPriority(Notification.PRIORITY_MAX) - .build(); - nm.notify(R.string.theme_reset_notification_title, notice); - } -} diff --git a/lineage/lib/main/java/org/lineageos/platform/internal/IconCacheManagerServiceBroker.java b/lineage/lib/main/java/org/lineageos/platform/internal/IconCacheManagerServiceBroker.java deleted file mode 100644 index 388335ea..00000000 --- a/lineage/lib/main/java/org/lineageos/platform/internal/IconCacheManagerServiceBroker.java +++ /dev/null @@ -1,100 +0,0 @@ -/* - * Copyright (C) 2016 The CyanogenMod Project - * - * 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. - */ - -package org.lineageos.platform.internal; - -import android.annotation.NonNull; -import android.content.ComponentName; -import android.content.Context; -import android.graphics.Bitmap; -import android.os.IBinder; -import android.os.RemoteException; - -import lineageos.app.LineageContextConstants; - -import org.lineageos.internal.themes.IIconCacheManager; -import org.lineageos.platform.internal.common.BrokeredServiceConnection; - -/** - * Icon cache service broker for connecting clients to a backing icon cache manager service. - * - * @hide - */ -public class IconCacheManagerServiceBroker extends BrokerableLineageSystemService<IIconCacheManager> { - - private static final ComponentName SERVICE_COMPONENT = - new ComponentName("org.lineageos.themeservice", - "org.lineageos.themeservice.IconCacheManagerService"); - - private final IIconCacheManager mServiceStubForFailure = new IIconCacheManager.Stub() { - @Override - public boolean cacheComposedIcon(Bitmap icon, String path) throws RemoteException { - return false; - } - }; - - private BrokeredServiceConnection mServiceConnection = new BrokeredServiceConnection() { - @Override - public void onBrokeredServiceConnected() { - } - - @Override - public void onBrokeredServiceDisconnected() { - } - }; - - private final class BinderService extends IIconCacheManager.Stub { - @Override - public boolean cacheComposedIcon(Bitmap icon, String path) throws RemoteException { - return getBrokeredService().cacheComposedIcon(icon, path); - } - } - - public IconCacheManagerServiceBroker(Context context) { - super(context); - setBrokeredServiceConnection(mServiceConnection); - } - - @Override - public String getFeatureDeclaration() { - return LineageContextConstants.Features.THEMES; - } - - @Override - protected IIconCacheManager getIBinderAsIInterface(@NonNull IBinder service) { - return IIconCacheManager.Stub.asInterface(service); - } - - @Override - protected IIconCacheManager getDefaultImplementation() { - return mServiceStubForFailure; - } - - @Override - protected ComponentName getServiceComponent() { - return SERVICE_COMPONENT; - } - - @Override - public void onStart() { - publishBinderService(LineageContextConstants.LINEAGE_ICON_CACHE_SERVICE, new BinderService()); - } - - @Override - protected String getComponentFilteringPermission() { - return lineageos.platform.Manifest.permission.ACCESS_THEME_MANAGER; - } -} diff --git a/lineage/lib/main/java/org/lineageos/platform/internal/ThemeManagerServiceBroker.java b/lineage/lib/main/java/org/lineageos/platform/internal/ThemeManagerServiceBroker.java deleted file mode 100644 index 450608d8..00000000 --- a/lineage/lib/main/java/org/lineageos/platform/internal/ThemeManagerServiceBroker.java +++ /dev/null @@ -1,372 +0,0 @@ -/* - * Copyright (C) 2016 The CyanogenMod Project - * - * 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. - */ - -package org.lineageos.platform.internal; - -import android.annotation.NonNull; -import android.content.ComponentName; -import android.content.Context; -import android.os.FileUtils; -import android.os.IBinder; -import android.os.RemoteCallbackList; -import android.os.RemoteException; -import android.os.SELinux; -import android.system.ErrnoException; -import android.system.Os; -import android.system.StructStat; -import android.util.Log; -import android.util.Slog; - -import lineageos.app.LineageContextConstants; -import lineageos.platform.Manifest; -import lineageos.themes.IThemeChangeListener; -import lineageos.themes.IThemeProcessingListener; -import lineageos.themes.IThemeService; -import lineageos.themes.ThemeChangeRequest; - -import org.lineageos.internal.util.ThemeUtils; -import org.lineageos.platform.internal.common.BrokeredServiceConnection; - -import java.io.File; - -import static lineageos.platform.Manifest.permission.ACCESS_THEME_MANAGER; - -/** - * Theme service broker for connecting clients to a backing theme manager service. - * - * @hide - */ -public class ThemeManagerServiceBroker extends BrokerableLineageSystemService<IThemeService> { - private static final String TAG = ThemeManagerServiceBroker.class.getSimpleName(); - private static final boolean DEBUG = false; - - private static final ComponentName SERVICE_COMPONENT = - new ComponentName("org.lineageos.themeservice", - "org.lineageos.themeservice.ThemeManagerService"); - - // Cached change listeners - private final RemoteCallbackList<IThemeChangeListener> mChangeListeners = - new RemoteCallbackList<>(); - private final RemoteCallbackList<IThemeProcessingListener> mProcessingListeners = - new RemoteCallbackList<>(); - - private Context mContext; - - private final IThemeService mServiceStubForFailure = new IThemeService.Stub() { - @Override - public void requestThemeChangeUpdates(IThemeChangeListener listener) throws RemoteException { - } - - @Override - public void removeUpdates(IThemeChangeListener listener) throws RemoteException { - } - - @Override - public void requestThemeChange(ThemeChangeRequest request, - boolean removePerAppThemes) throws RemoteException { - } - - @Override - public void applyDefaultTheme() throws RemoteException { - } - - @Override - public boolean isThemeApplying() throws RemoteException { - return false; - } - - @Override - public int getProgress() throws RemoteException { - return 0; - } - - @Override - public boolean processThemeResources(String themePkgName) throws RemoteException { - return false; - } - - @Override - public boolean isThemeBeingProcessed(String themePkgName) throws RemoteException { - return false; - } - - @Override - public void registerThemeProcessingListener( - IThemeProcessingListener listener) throws RemoteException { - } - - @Override - public void unregisterThemeProcessingListener( - IThemeProcessingListener listener) throws RemoteException { - } - - @Override - public void rebuildResourceCache() throws RemoteException { - } - - @Override - public long getLastThemeChangeTime() throws RemoteException { - return 0; - } - - @Override - public int getLastThemeChangeRequestType() throws RemoteException { - return 0; - } - }; - - private final class BinderService extends IThemeService.Stub { - - @Override - public void requestThemeChangeUpdates(IThemeChangeListener listener) - throws RemoteException { - enforcePermission(); - getBrokeredService().requestThemeChangeUpdates(listener); - mChangeListeners.register(listener); - } - - @Override - public void removeUpdates(IThemeChangeListener listener) throws RemoteException { - enforcePermission(); - getBrokeredService().removeUpdates(listener); - mChangeListeners.unregister(listener); - } - - @Override - public void requestThemeChange(ThemeChangeRequest request, - boolean removePerAppThemes) throws RemoteException { - enforcePermission(); - getBrokeredService().requestThemeChange(request, removePerAppThemes); - } - - @Override - public void applyDefaultTheme() throws RemoteException { - enforcePermission(); - getBrokeredService().applyDefaultTheme(); - } - - @Override - public boolean isThemeApplying() throws RemoteException { - enforcePermission(); - return getBrokeredService().isThemeApplying(); - } - - @Override - public int getProgress() throws RemoteException { - enforcePermission(); - return getBrokeredService().getProgress(); - } - - @Override - public boolean processThemeResources(String themePkgName) throws RemoteException { - enforcePermission(); - return getBrokeredService().processThemeResources(themePkgName); - } - - @Override - public boolean isThemeBeingProcessed(String themePkgName) throws RemoteException { - enforcePermission(); - return getBrokeredService().isThemeBeingProcessed(themePkgName); - } - - @Override - public void registerThemeProcessingListener( - IThemeProcessingListener listener) throws RemoteException { - enforcePermission(); - getBrokeredService().registerThemeProcessingListener(listener); - mProcessingListeners.register(listener); - } - - @Override - public void unregisterThemeProcessingListener( - IThemeProcessingListener listener) throws RemoteException { - enforcePermission(); - getBrokeredService().unregisterThemeProcessingListener(listener); - mProcessingListeners.unregister(listener); - } - - @Override - public void rebuildResourceCache() throws RemoteException { - enforcePermission(); - getBrokeredService().rebuildResourceCache(); - } - - @Override - public long getLastThemeChangeTime() throws RemoteException { - enforcePermission(); - return getBrokeredService().getLastThemeChangeTime(); - } - - @Override - public int getLastThemeChangeRequestType() throws RemoteException { - enforcePermission(); - return getBrokeredService().getLastThemeChangeRequestType(); - } - } - - public ThemeManagerServiceBroker(Context context) { - super(context); - mContext = context; - setBrokeredServiceConnection(mServiceConnection); - } - - @Override - protected IThemeService getIBinderAsIInterface(@NonNull IBinder service) { - return IThemeService.Stub.asInterface(service); - } - - @Override - protected IThemeService getDefaultImplementation() { - return mServiceStubForFailure; - } - - @Override - protected ComponentName getServiceComponent() { - return SERVICE_COMPONENT; - } - - @Override - public String getFeatureDeclaration() { - return LineageContextConstants.Features.THEMES; - } - - @Override - public void onStart() { - if (DEBUG) Slog.d(TAG, "service started"); - publishBinderService(LineageContextConstants.LINEAGE_THEME_SERVICE, new BinderService()); - } - - @Override - protected String getComponentFilteringPermission() { - return Manifest.permission.ACCESS_THEME_MANAGER; - } - - @Override - public void onBootPhase(int phase) { - if (phase == PHASE_SYSTEM_SERVICES_READY) { - // create the main theme directory for brokered service - if (createDirIfNotExists(ThemeUtils.SYSTEM_THEME_PATH)) { - // ensure it has the correct selinux label after creation - SELinux.restorecon(ThemeUtils.SYSTEM_THEME_PATH); - } - - if (shouldMigrateFilePermissions()) { - migrateFilePermissions(); - } - } else if (phase == PHASE_ACTIVITY_MANAGER_READY) { - tryConnecting(); - } - super.onBootPhase(phase); - } - - private BrokeredServiceConnection mServiceConnection = new BrokeredServiceConnection() { - @Override - public void onBrokeredServiceConnected() { - // If any change listeners are cached, register them with the newly connected - // service. - IThemeService themeService = - getBrokeredService(); - try { - int N = mChangeListeners.beginBroadcast(); - if (themeService != null && N > 0) { - for (int i = 0; i < N; i++) { - themeService.requestThemeChangeUpdates( - mChangeListeners.getBroadcastItem(i)); - } - } - } catch (RemoteException e) { - /* ignore */ - } finally { - mChangeListeners.finishBroadcast(); - } - - try { - int N = mProcessingListeners.beginBroadcast(); - if (themeService != null && N > 0) { - for (int i = 0; i < N; i++) { - themeService.registerThemeProcessingListener( - mProcessingListeners.getBroadcastItem(i)); - } - } - } catch (RemoteException e) { - /* ignore */ - } finally { - mProcessingListeners.finishBroadcast(); - } - } - - @Override - public void onBrokeredServiceDisconnected() { - } - }; - - private void enforcePermission() { - mContext.enforceCallingOrSelfPermission(ACCESS_THEME_MANAGER, null); - } - - /** - * @return True if {@link ThemeUtils#SYSTEM_THEME_ALARM_PATH} is not writable by other users - */ - private boolean shouldMigrateFilePermissions() { - return isUserWritable(ThemeUtils.SYSTEM_THEME_ALARM_PATH); - } - - /** - * Ensures other users can write files in /data/system/theme/* which is necessary for the - * brokered service to write theme data files. SELinux policies will not allow random third - * party apps to write to this location. - */ - private void migrateFilePermissions() { - File[] files = new File(ThemeUtils.SYSTEM_THEME_PATH).listFiles(); - for (File file : files) { - setAllUsersWritable(file, true); - } - } - - private void setAllUsersWritable(File file, boolean recursive) { - if (file.isDirectory() && recursive) { - File[] files = file.listFiles(); - for (File childFile : files) { - setAllUsersWritable(childFile, recursive); - } - } - if (!isUserWritable(file.getAbsolutePath())) { - file.setWritable(true, false); - } - } - - private boolean isUserWritable(String path) { - try { - StructStat stat = Os.stat(path); - return (stat.st_mode & 2) == 0; - } catch (ErrnoException e) { - Log.w(TAG, "Cannot stat " + path); - } - return false; - } - - private static boolean createDirIfNotExists(String dirPath) { - final File dir = new File(dirPath); - if (!dir.exists()) { - if (dir.mkdir()) { - FileUtils.setPermissions(dir, FileUtils.S_IRWXU | - FileUtils.S_IRWXG| FileUtils.S_IRWXO, -1, -1); - return true; - } - } - return false; - } -} diff --git a/lineage/res/AndroidManifest.xml b/lineage/res/AndroidManifest.xml index 00466d24..c712c948 100644 --- a/lineage/res/AndroidManifest.xml +++ b/lineage/res/AndroidManifest.xml @@ -155,27 +155,6 @@ android:description="@string/permdesc_thirdPartyKeyguard" android:protectionLevel="normal" /> - <!-- Allows an application to use ThemeManager --> - <permission android:name="lineageos.permission.ACCESS_THEME_MANAGER" - android:label="@string/permlab_accessThemeService" - android:description="@string/permdesc_accessThemeService" - android:protectionLevel="normal" /> - - <!-- Allows an application to read the current theme configuration and - get information about the various themes currently installed --> - <permission android:name="lineageos.permission.READ_THEMES" - android:label="@string/permlab_readThemes" - android:description="@string/permdesc_readThemesDesc" - android:protectionLevel="normal" /> - - <!-- Allows an application to write the current theme configuration and - write information about the various themes currently installed. - Changing themes should be done through the service ACCESS_THEME_MANAGER --> - <permission android:name="lineageos.permission.WRITE_THEMES" - android:label="@string/permlab_writeThemes" - android:description="@string/permdesc_writeThemesDesc" - android:protectionLevel="normal" /> - <!-- Allows low-level access to performance management. <p>Not for use by third-party applications. --> <permission android:name="lineageos.permission.PERFORMANCE_ACCESS" @@ -256,11 +235,6 @@ <permission android:name="lineageos.permission.BIND_CORE_SERVICE" android:protectionLevel="signature|privileged" /> - <!-- Not meant for third parties. - @hide --> - <permission android:name="lineageos.permission.SEND_PROTECTED_THEME_BROADCAST" - android:protectionLevel="signature|privileged" /> - <application android:process="system" android:persistent="true" android:hasCode="false" diff --git a/lineage/res/res/values-af/strings.xml b/lineage/res/res/values-af/strings.xml index 18832e70..58cda469 100644 --- a/lineage/res/res/values-af/strings.xml +++ b/lineage/res/res/values-af/strings.xml @@ -119,25 +119,12 @@ <string name="permlab_thirdPartyKeyguard">derde party slotskerm</string> <!-- Third party keyguard permission description --> <string name="permdesc_thirdPartyKeyguard">Laat \'n toep toe om gebruik te word as \'n onveilige skermslot.</string> - <!-- Theme installation error notification --> - <string name="theme_install_error_title">Kon nie tema installeer</string> - <string name="theme_install_error_message"><xliff:g id="theme">%1$s</xliff:g> kon nie installeer nie</string> - <!-- Theme reset notification --> - <string name="theme_reset_notification_title">Herstel tema</string> - <string name="theme_reset_notification_message">Stelsel tema is herstel a. g. v. baie program foute.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_accessThemeService">toegang tot tema diens</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_accessThemeService">Laat \'n toep toe om toegang na die tema diens te verkry. Moet nooit nodig wees vir normale programme nie.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_readThemes">lees jou tema inligting</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_readThemesDesc">Laat die toep toe om jou temas te lees en - bepaal watter tema jy toegepas het.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_writeThemes">verander jou temas</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_writeThemesDesc">Laat die toep toe om nuwe temas by te voeg en verander die tema wat jy toegepas het.</string> <!-- Performance manager permission title --> <string name="permlab_perfAccess">toegang na prestasie bestuurder</string> <!-- Performance manager permission description --> @@ -180,9 +167,6 @@ <!-- LineageAudioService - observe session changes permission --> <string name="permlab_manage_audio_sessions">bestuur oudio-sessie veranderinge</string> <string name="permdesc_manage_audio_sessions">Laat \'n toep toe om oudio-stroom bywerkings te stuur.</string> - <!-- QuickSettings: Themes tile --> - <string name="qs_themes_label">Temas</string> - <string name="qs_themes_content_description">Verpersoonlik jou tema</string> <!-- Privacy Guard --> <string name="privacy_guard_manager_title">Privaatheidswag</string> <!-- Permissions used by remote preferences --> diff --git a/lineage/res/res/values-am/strings.xml b/lineage/res/res/values-am/strings.xml index ec4d0c1a..a2da064c 100644 --- a/lineage/res/res/values-am/strings.xml +++ b/lineage/res/res/values-am/strings.xml @@ -40,8 +40,6 @@ <!-- LiveDisplay strings --> <!-- Third party keyguard permission label --> <!-- Third party keyguard permission description --> - <!-- Theme installation error notification --> - <!-- Theme reset notification --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> @@ -64,7 +62,6 @@ <!-- LiveDisplay manager permission --> <!-- LineageAudioService - observe session changes permission --> <!-- LineageAudioService - observe session changes permission --> - <!-- QuickSettings: Themes tile --> <!-- Privacy Guard --> <!-- Permissions used by remote preferences --> </resources> diff --git a/lineage/res/res/values-ar/strings.xml b/lineage/res/res/values-ar/strings.xml index b4512f06..f435f423 100644 --- a/lineage/res/res/values-ar/strings.xml +++ b/lineage/res/res/values-ar/strings.xml @@ -114,26 +114,12 @@ <string name="permlab_thirdPartyKeyguard">شاشة تأمين جهة أخرى</string> <!-- Third party keyguard permission description --> <string name="permdesc_thirdPartyKeyguard">السماح باستخدام تطبيق كشاشة تأمين غير آمنة.</string> - <!-- Theme installation error notification --> - <string name="theme_install_error_title">فشل تثبيت السمة</string> - <string name="theme_install_error_message"><xliff:g id="theme">%1$s</xliff:g> فشل التثبيت</string> - <!-- Theme reset notification --> - <string name="theme_reset_notification_title">إعادة تعيين السمة</string> - <string name="theme_reset_notification_message">تم استرداد سمة النظام بسبب عمليات تعطيل متعددة للتطبيق.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_accessThemeService">الوصول إلى خدمة السمة</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_accessThemeService">يسمح للتطبيق بالوصول إلى خدمة السمة. ينبغي أن لا تكون ضرورية أبداً للتطبيقات العادية.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_readThemes">قراءة معلومات السمة لديك</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_readThemesDesc">يسمح للتطبيق بقراءة السمات الخاصة بك -وتحديد السمة التي قمت بتطبيقها.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_writeThemes">تعديل السمات الخاصة بك</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_writeThemesDesc">السماح للتطبيق بإدخال سمات جديدة -وتعديل السمة التي قمت بتطبيقها.</string> <!-- Performance manager permission title --> <string name="permlab_perfAccess">الوصول إلى مدير الأداء</string> <!-- Performance manager permission description --> @@ -174,9 +160,6 @@ <string name="permlab_observe_audio_sessions">ملاحظة تغييرات جلسة عمل الصوت</string> <string name="permdesc_observe_audio_sessions">يسمح لتطبيق معين لملاحظة تدفقات الصوت الجاري إنشاؤها وتدميرها.</string> <!-- LineageAudioService - observe session changes permission --> - <!-- QuickSettings: Themes tile --> - <string name="qs_themes_label">السمات</string> - <string name="qs_themes_content_description">تخصيص السمة</string> <!-- Privacy Guard --> <!-- Permissions used by remote preferences --> </resources> diff --git a/lineage/res/res/values-as-rIN/strings.xml b/lineage/res/res/values-as-rIN/strings.xml index 75459fe7..0d454360 100644 --- a/lineage/res/res/values-as-rIN/strings.xml +++ b/lineage/res/res/values-as-rIN/strings.xml @@ -104,8 +104,6 @@ <string name="permlab_thirdPartyKeyguard">তৃতীয় পক্ষৰ লক স্ক্ৰীণ</string> <!-- Third party keyguard permission description --> <string name="permdesc_thirdPartyKeyguard">এটা এপ্প্ক অসুৰক্ষিত লক স্ক্ৰীণ হিচাপে ব্যৱহাৰ কৰিবলৈ অনুমতি দিয়ে।</string> - <!-- Theme installation error notification --> - <!-- Theme reset notification --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> @@ -128,7 +126,6 @@ <!-- LiveDisplay manager permission --> <!-- LineageAudioService - observe session changes permission --> <!-- LineageAudioService - observe session changes permission --> - <!-- QuickSettings: Themes tile --> <!-- Privacy Guard --> <!-- Permissions used by remote preferences --> </resources> diff --git a/lineage/res/res/values-ast-rES/strings.xml b/lineage/res/res/values-ast-rES/strings.xml index 18a7f02f..b5127cf4 100644 --- a/lineage/res/res/values-ast-rES/strings.xml +++ b/lineage/res/res/values-ast-rES/strings.xml @@ -110,24 +110,12 @@ <string name="permlab_thirdPartyKeyguard">pantalla de bloquéu de terceros</string> <!-- Third party keyguard permission description --> <string name="permdesc_thirdPartyKeyguard">Permite qu\'una aplicación s\'use como una pantalla de bloquéu insegura.</string> - <!-- Theme installation error notification --> - <string name="theme_install_error_title">Fallu al instalase\'l tema</string> - <string name="theme_install_error_message"><xliff:g id="theme">%1$s</xliff:g> falló al instalase</string> - <!-- Theme reset notification --> - <string name="theme_reset_notification_message">Restauróse\'l tema\'l sistema pola mor de casques múltiples d\'aplicaciones.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_accessThemeService">acceder al serviciu de temes</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_accessThemeService">Permite qu\'una aplicación acceda al serviciu de temes. Enxamás debería precisase p\'aplicaciones normales.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_readThemes">lleer la información del to tema</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_readThemesDesc">Permite que l\'aplicación llea los tos temes y - determine\'l que tienes aplicáu.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_writeThemes">modificar los tos temes</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_writeThemesDesc">Permite que l\'aplicación inxerte temes nuevos y modifique\'l que tienes aplicáu.</string> <!-- Performance manager permission title --> <string name="permlab_perfAccess">acceder al xestor de rindimientu</string> <!-- Performance manager permission description --> @@ -157,9 +145,6 @@ <!-- LineageAudioService - observe session changes permission --> <string name="permlab_manage_audio_sessions">xestionar camudancies de sesiones d\'audiu</string> <string name="permdesc_manage_audio_sessions">Permite qu\'una aplicación unvie anovamientos de fluxos d\'audiu.</string> - <!-- QuickSettings: Themes tile --> - <string name="qs_themes_label">Temes</string> - <string name="qs_themes_content_description">Personaliza\'l to tema</string> <!-- Privacy Guard --> <string name="privacy_guard_manager_title">Guardián de privacidá</string> <!-- Permissions used by remote preferences --> diff --git a/lineage/res/res/values-az-rAZ/strings.xml b/lineage/res/res/values-az-rAZ/strings.xml index 942ace96..a84fb77f 100644 --- a/lineage/res/res/values-az-rAZ/strings.xml +++ b/lineage/res/res/values-az-rAZ/strings.xml @@ -104,8 +104,6 @@ <string name="permlab_thirdPartyKeyguard">üçüncü tərəf kilid ekranı</string> <!-- Third party keyguard permission description --> <string name="permdesc_thirdPartyKeyguard">Tətbiqetməyə şifrəsiz kilid ekranı olaraq istifadə etmə icazəsi verər.</string> - <!-- Theme installation error notification --> - <!-- Theme reset notification --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> @@ -128,7 +126,6 @@ <!-- LiveDisplay manager permission --> <!-- LineageAudioService - observe session changes permission --> <!-- LineageAudioService - observe session changes permission --> - <!-- QuickSettings: Themes tile --> <!-- Privacy Guard --> <!-- Permissions used by remote preferences --> </resources> diff --git a/lineage/res/res/values-be-rBY/strings.xml b/lineage/res/res/values-be-rBY/strings.xml index 71379338..4d508a1b 100644 --- a/lineage/res/res/values-be-rBY/strings.xml +++ b/lineage/res/res/values-be-rBY/strings.xml @@ -114,25 +114,12 @@ <string name="permlab_thirdPartyKeyguard">Іншы экран блакавання</string> <!-- Third party keyguard permission description --> <string name="permdesc_thirdPartyKeyguard">Дадатак зможа працаваць у якасці небяспечнага метаду блакавання экрана.</string> - <!-- Theme installation error notification --> - <string name="theme_install_error_title">Не атрымалася ўсталяваць тэму</string> - <string name="theme_install_error_message">Не атрымалася ўсталяваць <xliff:g id="theme">%1$s</xliff:g></string> - <!-- Theme reset notification --> - <string name="theme_reset_notification_title">Тэма адключана</string> - <string name="theme_reset_notification_message">З-за збояў дадаткаў адноўлена стандартная тэма.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_accessThemeService">доступ да службы тэм</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_accessThemeService">Дадатак зможа атрымваць доступ да службы тэм. Гэты дазвол не выкарыстоўваецца звычайнымі дадаткамі.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_readThemes">чытанне інфармацыі пра тэму</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_readThemesDesc">Дадатак зможа счытваць тэмы афармлення - і вызначаць, якая тэма цяпер ужыта.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_writeThemes">змена тэм</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_writeThemesDesc">Дадатак зможа ўжыццяўляць усталёўку новых тэм афармлення і змяняць бягучую тэму.</string> <!-- Performance manager permission title --> <string name="permlab_perfAccess">доступ да менеджара прадукцыйнасці</string> <!-- Performance manager permission description --> @@ -153,8 +140,6 @@ <string name="permlab_manageLiveDisplay">кіраванне наладамі LiveDisplay</string> <!-- LineageAudioService - observe session changes permission --> <!-- LineageAudioService - observe session changes permission --> - <!-- QuickSettings: Themes tile --> - <string name="qs_themes_label">Знешні выгляд</string> <!-- Privacy Guard --> <string name="privacy_guard_manager_title">Ахова</string> <!-- Permissions used by remote preferences --> diff --git a/lineage/res/res/values-be/strings.xml b/lineage/res/res/values-be/strings.xml index 3e12da30..3613372f 100644 --- a/lineage/res/res/values-be/strings.xml +++ b/lineage/res/res/values-be/strings.xml @@ -117,25 +117,12 @@ <string name="touchscreen_gesture_extras">Іншае</string> <string name="touchscreen_gesture_haptic_feedback">Вібраводгук</string> <string name="touchscreen_gesture_haptic_feedback_summary">Вібраваць пры паспяховым распазнанні жэста</string> - <!-- Theme installation error notification --> - <string name="theme_install_error_title">Не атрымалася ўсталяваць тэму</string> - <string name="theme_install_error_message">Не атрымалася ўсталяваць <xliff:g id="theme">%1$s</xliff:g></string> - <!-- Theme reset notification --> - <string name="theme_reset_notification_title">Тэма адключана</string> - <string name="theme_reset_notification_message">З-за збояў дадаткаў адноўлена стандартная тэма.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_accessThemeService">доступ да службы тэм</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_accessThemeService">Дадатак зможа атрымваць доступ да службы тэм. Гэты дазвол не выкарыстоўваецца звычайнымі дадаткамі.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_readThemes">чытанне інфармацыі пра тэму</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_readThemesDesc">Дадатак зможа счытваць тэмы афармлення - і вызначаць, якая тэма цяпер ужыта.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_writeThemes">змена тэм</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_writeThemesDesc">Дадатак зможа ўжыццяўляць усталёўку новых тэм афармлення і змяняць бягучую тэму.</string> <!-- Performance manager permission title --> <string name="permlab_perfAccess">доступ да менеджара прадукцыйнасці</string> <!-- Performance manager permission description --> @@ -156,7 +143,5 @@ <string name="permlab_manageLiveDisplay">кіраванне наладамі LiveDisplay</string> <!-- LineageAudioService - observe session changes permission --> <!-- LineageAudioService - observe session changes permission --> - <!-- QuickSettings: Themes tile --> - <string name="qs_themes_label">Знешні выгляд</string> <!-- Custom booot dexopt --> </resources> diff --git a/lineage/res/res/values-bg/strings.xml b/lineage/res/res/values-bg/strings.xml index 076da17c..98e832f8 100644 --- a/lineage/res/res/values-bg/strings.xml +++ b/lineage/res/res/values-bg/strings.xml @@ -119,24 +119,12 @@ <string name="permlab_thirdPartyKeyguard">Защитен екран от друг автор</string> <!-- Third party keyguard permission description --> <string name="permdesc_thirdPartyKeyguard">Позволява приложението да бъде ползвано като незаключен защитен екран.</string> - <!-- Theme installation error notification --> - <string name="theme_install_error_title">Неуспешно инсталиране на темата</string> - <string name="theme_install_error_message">Инсталирането на <xliff:g id="theme">%1$s</xliff:g>е неуспешно</string> - <!-- Theme reset notification --> - <string name="theme_reset_notification_title">Нулиране на темата</string> - <string name="theme_reset_notification_message">Стандартната тема е възстановена поради множество грешки.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_accessThemeService">достъп до темите</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_accessThemeService">Позволява на приложението достъп до услугата за теми. Не е необходимо за нормални приложения.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_readThemes">прочетете информацията за темата</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_readThemesDesc">Разрешава на приложението да чете вашите теми и да определя коя тема сте приложили.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_writeThemes">Модифициране на темите</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_writeThemesDesc">Разрешава на приложението да добавя нови теми и да променя текущата тема.</string> <!-- Performance manager permission title --> <string name="permlab_perfAccess">Достъп до диспечера за производителност</string> <!-- Performance manager permission description --> @@ -179,9 +167,6 @@ <!-- LineageAudioService - observe session changes permission --> <string name="permlab_manage_audio_sessions">управление на промените в аудио сесии</string> <string name="permdesc_manage_audio_sessions">Разрешава на приложението да изпраща известия за аудио стрийминг актуализации.</string> - <!-- QuickSettings: Themes tile --> - <string name="qs_themes_label">Теми</string> - <string name="qs_themes_content_description">Персонализирайте вашата тема</string> <!-- Privacy Guard --> <string name="privacy_guard_manager_title">Защитен режим</string> <!-- Permissions used by remote preferences --> diff --git a/lineage/res/res/values-bn-rBD/strings.xml b/lineage/res/res/values-bn-rBD/strings.xml index ec4d0c1a..a2da064c 100644 --- a/lineage/res/res/values-bn-rBD/strings.xml +++ b/lineage/res/res/values-bn-rBD/strings.xml @@ -40,8 +40,6 @@ <!-- LiveDisplay strings --> <!-- Third party keyguard permission label --> <!-- Third party keyguard permission description --> - <!-- Theme installation error notification --> - <!-- Theme reset notification --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> @@ -64,7 +62,6 @@ <!-- LiveDisplay manager permission --> <!-- LineageAudioService - observe session changes permission --> <!-- LineageAudioService - observe session changes permission --> - <!-- QuickSettings: Themes tile --> <!-- Privacy Guard --> <!-- Permissions used by remote preferences --> </resources> diff --git a/lineage/res/res/values-br-rFR/strings.xml b/lineage/res/res/values-br-rFR/strings.xml index ec4d0c1a..a2da064c 100644 --- a/lineage/res/res/values-br-rFR/strings.xml +++ b/lineage/res/res/values-br-rFR/strings.xml @@ -40,8 +40,6 @@ <!-- LiveDisplay strings --> <!-- Third party keyguard permission label --> <!-- Third party keyguard permission description --> - <!-- Theme installation error notification --> - <!-- Theme reset notification --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> @@ -64,7 +62,6 @@ <!-- LiveDisplay manager permission --> <!-- LineageAudioService - observe session changes permission --> <!-- LineageAudioService - observe session changes permission --> - <!-- QuickSettings: Themes tile --> <!-- Privacy Guard --> <!-- Permissions used by remote preferences --> </resources> diff --git a/lineage/res/res/values-bs-rBA/strings.xml b/lineage/res/res/values-bs-rBA/strings.xml index ec4d0c1a..a2da064c 100644 --- a/lineage/res/res/values-bs-rBA/strings.xml +++ b/lineage/res/res/values-bs-rBA/strings.xml @@ -40,8 +40,6 @@ <!-- LiveDisplay strings --> <!-- Third party keyguard permission label --> <!-- Third party keyguard permission description --> - <!-- Theme installation error notification --> - <!-- Theme reset notification --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> @@ -64,7 +62,6 @@ <!-- LiveDisplay manager permission --> <!-- LineageAudioService - observe session changes permission --> <!-- LineageAudioService - observe session changes permission --> - <!-- QuickSettings: Themes tile --> <!-- Privacy Guard --> <!-- Permissions used by remote preferences --> </resources> diff --git a/lineage/res/res/values-ca/strings.xml b/lineage/res/res/values-ca/strings.xml index be99184a..931e90b7 100644 --- a/lineage/res/res/values-ca/strings.xml +++ b/lineage/res/res/values-ca/strings.xml @@ -119,24 +119,12 @@ <string name="permlab_thirdPartyKeyguard">pantalla de bloqueig de tercers</string> <!-- Third party keyguard permission description --> <string name="permdesc_thirdPartyKeyguard">Permet a una aplicació ser utilitzada com a pantalla de bloqueig no segura.</string> - <!-- Theme installation error notification --> - <string name="theme_install_error_title">No ha pogut instal·lar el tema</string> - <string name="theme_install_error_message">No s\'ha pogut instal·lar <xliff:g id="theme">%1$s</xliff:g></string> - <!-- Theme reset notification --> - <string name="theme_reset_notification_title">Restableix el tema</string> - <string name="theme_reset_notification_message">El tema del sistema s\'ha restaurat degut a múltiples fallades d\'aplicacions.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_accessThemeService">accés al servei de temes</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_accessThemeService">Permet a una aplicació accedir al servei de temes. No s\'hauria de necessitar mai en les aplicacions normals.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_readThemes">llegeix la informació del teu tema</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_readThemesDesc">Permet a l\'aplicació llegir els teus temes i determinar quin tema has aplicat.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_writeThemes">modifica els teus temes</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_writeThemesDesc">Permet a l\'aplicació introduir temes nous i modificar quin tema has aplicat.</string> <!-- Performance manager permission title --> <string name="permlab_perfAccess">accés a l\'administrador de rendiment</string> <!-- Performance manager permission description --> @@ -179,9 +167,6 @@ <!-- LineageAudioService - observe session changes permission --> <string name="permlab_manage_audio_sessions">administra els canvis en la sessió de so</string> <string name="permdesc_manage_audio_sessions">Permet a una aplicació enviar actualitzacions de transmissió d\'àudio.</string> - <!-- QuickSettings: Themes tile --> - <string name="qs_themes_label">Temes</string> - <string name="qs_themes_content_description">Personalitza els teus temes</string> <!-- Privacy Guard --> <string name="privacy_guard_manager_title">Guarda de privacitat</string> <!-- Permissions used by remote preferences --> diff --git a/lineage/res/res/values-cs/strings.xml b/lineage/res/res/values-cs/strings.xml index 5a5dc1d1..3eb64ebe 100644 --- a/lineage/res/res/values-cs/strings.xml +++ b/lineage/res/res/values-cs/strings.xml @@ -119,24 +119,12 @@ <string name="permlab_thirdPartyKeyguard">zámek obrazovky třetí strany</string> <!-- Third party keyguard permission description --> <string name="permdesc_thirdPartyKeyguard">Umožňuje být použit jako ne zcela bezpečný zámek obrazovky.</string> - <!-- Theme installation error notification --> - <string name="theme_install_error_title">Instalace motivu selhala</string> - <string name="theme_install_error_message">Instalace <xliff:g id="theme">%1$s</xliff:g> selhala</string> - <!-- Theme reset notification --> - <string name="theme_reset_notification_title">Obnovit motiv</string> - <string name="theme_reset_notification_message">Kvůli pádům aplikací byl obnoven výchozí systémový motiv.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_accessThemeService">přístup ke službě motivu</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_accessThemeService">Umožňuje přistupovat ke službě motivu. Toto oprávnění by neměla vyžadovat žádná normální aplikace.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_readThemes">čtení informace o motivu</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_readThemesDesc">Umožňuje načíst motivy a určit, který motiv je použit.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_writeThemes">změnit motiv</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_writeThemesDesc">Umožňuje vložit nový motiv a změnit informaci o tom, který motiv je použit.</string> <!-- Performance manager permission title --> <string name="permlab_perfAccess">přístup ke správci výkonu</string> <!-- Performance manager permission description --> @@ -179,9 +167,6 @@ <!-- LineageAudioService - observe session changes permission --> <string name="permlab_manage_audio_sessions">upravovat změny audio relace</string> <string name="permdesc_manage_audio_sessions">Umožňuje aktualizovat zvukové relace.</string> - <!-- QuickSettings: Themes tile --> - <string name="qs_themes_label">Motivy</string> - <string name="qs_themes_content_description">Vlastní nastavení motivu</string> <!-- Privacy Guard --> <string name="privacy_guard_manager_title">Ochrana soukromí</string> <!-- Permissions used by remote preferences --> diff --git a/lineage/res/res/values-csb-rPL/strings.xml b/lineage/res/res/values-csb-rPL/strings.xml index ec4d0c1a..a2da064c 100644 --- a/lineage/res/res/values-csb-rPL/strings.xml +++ b/lineage/res/res/values-csb-rPL/strings.xml @@ -40,8 +40,6 @@ <!-- LiveDisplay strings --> <!-- Third party keyguard permission label --> <!-- Third party keyguard permission description --> - <!-- Theme installation error notification --> - <!-- Theme reset notification --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> @@ -64,7 +62,6 @@ <!-- LiveDisplay manager permission --> <!-- LineageAudioService - observe session changes permission --> <!-- LineageAudioService - observe session changes permission --> - <!-- QuickSettings: Themes tile --> <!-- Privacy Guard --> <!-- Permissions used by remote preferences --> </resources> diff --git a/lineage/res/res/values-cy/strings.xml b/lineage/res/res/values-cy/strings.xml index ec4d0c1a..a2da064c 100644 --- a/lineage/res/res/values-cy/strings.xml +++ b/lineage/res/res/values-cy/strings.xml @@ -40,8 +40,6 @@ <!-- LiveDisplay strings --> <!-- Third party keyguard permission label --> <!-- Third party keyguard permission description --> - <!-- Theme installation error notification --> - <!-- Theme reset notification --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> @@ -64,7 +62,6 @@ <!-- LiveDisplay manager permission --> <!-- LineageAudioService - observe session changes permission --> <!-- LineageAudioService - observe session changes permission --> - <!-- QuickSettings: Themes tile --> <!-- Privacy Guard --> <!-- Permissions used by remote preferences --> </resources> diff --git a/lineage/res/res/values-da/strings.xml b/lineage/res/res/values-da/strings.xml index 5a1a4a36..c2255396 100644 --- a/lineage/res/res/values-da/strings.xml +++ b/lineage/res/res/values-da/strings.xml @@ -119,24 +119,12 @@ <string name="permlab_thirdPartyKeyguard">tredjeparts skærmlås</string> <!-- Third party keyguard permission description --> <string name="permdesc_thirdPartyKeyguard">Gør det muligt for en app at blive brugt som en usikker skærmlås.</string> - <!-- Theme installation error notification --> - <string name="theme_install_error_title">Det lykkedes ikke at installere temaet</string> - <string name="theme_install_error_message"><xliff:g id="theme">%1$s</xliff:g> kunne ikke installeres</string> - <!-- Theme reset notification --> - <string name="theme_reset_notification_title">Nulstil tema</string> - <string name="theme_reset_notification_message">System-tema er gendannet på grund af flere app nedbrud.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_accessThemeService">tilgå tematjenesten</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_accessThemeService">Tillader en app at tilgå tematjenesten. Bør aldrig være nødvendig for alm. apps.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_readThemes">læse din temainformation</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_readThemesDesc">Tillader appen at læse dine temaer og afgøre, hvilket tema du anvender.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_writeThemes">ændre dine temaer</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_writeThemesDesc">Tillader appen at indsætte nye temaer og ændre, hvilket tema du anvender.</string> <!-- Performance manager permission title --> <string name="permlab_perfAccess">tilgå ydelsesmanager</string> <!-- Performance manager permission description --> @@ -179,9 +167,6 @@ <!-- LineageAudioService - observe session changes permission --> <string name="permlab_manage_audio_sessions">administrér ændringer for lydsession</string> <string name="permdesc_manage_audio_sessions">Tillader en app at sende lydstream-opdateringer.</string> - <!-- QuickSettings: Themes tile --> - <string name="qs_themes_label">Temaer</string> - <string name="qs_themes_content_description">Tilpas dit tema</string> <!-- Privacy Guard --> <string name="privacy_guard_manager_title">Privatlivsvagt</string> <!-- Permissions used by remote preferences --> diff --git a/lineage/res/res/values-de/strings.xml b/lineage/res/res/values-de/strings.xml index 3d56af02..a95cfa50 100644 --- a/lineage/res/res/values-de/strings.xml +++ b/lineage/res/res/values-de/strings.xml @@ -119,24 +119,12 @@ <string name="permlab_thirdPartyKeyguard">Sperrbildschirm eines Drittanbieters</string> <!-- Third party keyguard permission description --> <string name="permdesc_thirdPartyKeyguard">Ermöglicht der App, als unsicherer Sperrbildschirm genutzt zu werden.</string> - <!-- Theme installation error notification --> - <string name="theme_install_error_title">Design konnte nicht installiert werden</string> - <string name="theme_install_error_message"><xliff:g id="theme">%1$s</xliff:g> konnte nicht installiert werden.</string> - <!-- Theme reset notification --> - <string name="theme_reset_notification_title">Design zurücksetzen</string> - <string name="theme_reset_notification_message">Aufgrund mehrerer App-Abstürze wurde das systemeigene Design wiederhergestellt.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_accessThemeService">auf Designdienst zugreifen</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_accessThemeService">Ermöglicht einer App den Zugriff auf den Designdienst. Wird für normale Apps nicht benötigt.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_readThemes">Informationen Ihres Designs lesen</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_readThemesDesc">Ermöglicht der App, auszulesen, welche Designs Sie installiert und aktiviert haben.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_writeThemes">aktive Designs ändern</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_writeThemesDesc">Ermöglicht der App, neue Designs zu installieren und das aktive Design zu wählen.</string> <!-- Performance manager permission title --> <string name="permlab_perfAccess">Zugriff auf Leistungsmanager</string> <!-- Performance manager permission description --> @@ -179,9 +167,6 @@ <!-- LineageAudioService - observe session changes permission --> <string name="permlab_manage_audio_sessions">Audiositzungsänderungen verwalten</string> <string name="permdesc_manage_audio_sessions">Ermöglicht einer App, Audiostream-Aktualisierungen zu senden.</string> - <!-- QuickSettings: Themes tile --> - <string name="qs_themes_label">Designs</string> - <string name="qs_themes_content_description">Passen Sie Ihr Design an</string> <!-- Privacy Guard --> <string name="privacy_guard_manager_title">Datenschutz</string> <!-- Permissions used by remote preferences --> diff --git a/lineage/res/res/values-el/strings.xml b/lineage/res/res/values-el/strings.xml index 1406ad48..2909afdc 100644 --- a/lineage/res/res/values-el/strings.xml +++ b/lineage/res/res/values-el/strings.xml @@ -119,24 +119,12 @@ <string name="permlab_thirdPartyKeyguard">χρήση ως οθόνη κλειδώματος</string> <!-- Third party keyguard permission description --> <string name="permdesc_thirdPartyKeyguard">Επιτρέπει σε μια εφαρμογή να χρησιμοποιηθεί ως μια ανασφαλής οθόνη κλειδώματος.</string> - <!-- Theme installation error notification --> - <string name="theme_install_error_title">Αποτυχία εγκατάστασης του θέματος</string> - <string name="theme_install_error_message">Απέτυχε η εγκατάσταση του <xliff:g id="theme">%1$s</xliff:g></string> - <!-- Theme reset notification --> - <string name="theme_reset_notification_title">Επαναφορά θέματος</string> - <string name="theme_reset_notification_message">Έγινε επαναφορά του θέματος συστήματος λόγω πολλαπλών σφαλμάτων εφαρμογών.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_accessThemeService">πρόσβαση στην υπηρεσία θεμάτων</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_accessThemeService">Επιτρέπει σε μια εφαρμογή την πρόσβαση στην υπηρεσία θεμάτων. Δεν πρέπει να απαιτείται από κανονικές εφαρμογές.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_readThemes">ανάγνωση πληροφοριών του θέματος σας</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_readThemesDesc">Επιτρέπει στην εφαρμογή να διαβάζει τα θέματα σας και να προσδιορίσει ποιο θέμα έχετε εφαρμόσει.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_writeThemes">τροποποίηση των θεμάτων σας</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_writeThemesDesc">Επιτρέπει στην εφαρμογή να εισάγει νέα θέματα και να τροποποιήσει το θέμα που έχετε εφαρμόσει.</string> <!-- Performance manager permission title --> <string name="permlab_perfAccess">πρόσβαση στην υπηρεσία επιδόσεων</string> <!-- Performance manager permission description --> @@ -179,9 +167,6 @@ <!-- LineageAudioService - observe session changes permission --> <string name="permlab_manage_audio_sessions">διαχείριση αλλαγών στις συνεδρίες ήχου</string> <string name="permdesc_manage_audio_sessions">Επιτρέπει σε μια εφαρμογή να στέλνει ενημερώσεις στη ροή ήχου.</string> - <!-- QuickSettings: Themes tile --> - <string name="qs_themes_label">Θέματα</string> - <string name="qs_themes_content_description">Προσαρμόστε το θέμα σας</string> <!-- Privacy Guard --> <string name="privacy_guard_manager_title">Προστασία Απορρήτου</string> <!-- Permissions used by remote preferences --> diff --git a/lineage/res/res/values-en-rAU/strings.xml b/lineage/res/res/values-en-rAU/strings.xml index b2b53f4a..ddaf9373 100644 --- a/lineage/res/res/values-en-rAU/strings.xml +++ b/lineage/res/res/values-en-rAU/strings.xml @@ -119,25 +119,12 @@ <string name="permlab_thirdPartyKeyguard">third party lock screen</string> <!-- Third party keyguard permission description --> <string name="permdesc_thirdPartyKeyguard">Allows an app to be used as an insecure lock screen.</string> - <!-- Theme installation error notification --> - <string name="theme_install_error_title">Failed to install theme</string> - <string name="theme_install_error_message"><xliff:g id="theme">%1$s</xliff:g> failed to install</string> - <!-- Theme reset notification --> - <string name="theme_reset_notification_title">Theme reset</string> - <string name="theme_reset_notification_message">System theme restored due to multiple app crashes.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_accessThemeService">access theme service</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_accessThemeService">Allows an app to access the theme service. Should never be needed for normal apps.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_readThemes">read your theme info</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_readThemesDesc">Allows the app to read your themes and - determine which theme you have applied.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_writeThemes">modify your themes</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_writeThemesDesc">Allows the app to insert new themes and modify which theme you have applied.</string> <!-- Performance manager permission title --> <string name="permlab_perfAccess">access performance manager</string> <!-- Performance manager permission description --> @@ -180,9 +167,6 @@ <!-- LineageAudioService - observe session changes permission --> <string name="permlab_manage_audio_sessions">manage audio session changes</string> <string name="permdesc_manage_audio_sessions">Allows an app to send audio stream updates.</string> - <!-- QuickSettings: Themes tile --> - <string name="qs_themes_label">Themes</string> - <string name="qs_themes_content_description">Customise your theme</string> <!-- Privacy Guard --> <string name="privacy_guard_manager_title">Privacy Guard</string> <!-- Permissions used by remote preferences --> diff --git a/lineage/res/res/values-en-rGB/strings.xml b/lineage/res/res/values-en-rGB/strings.xml index 6b1fd2b2..c7e789ee 100644 --- a/lineage/res/res/values-en-rGB/strings.xml +++ b/lineage/res/res/values-en-rGB/strings.xml @@ -119,25 +119,12 @@ <string name="permlab_thirdPartyKeyguard">third party lock screen</string> <!-- Third party keyguard permission description --> <string name="permdesc_thirdPartyKeyguard">Allows an app to be used as an insecure lock screen.</string> - <!-- Theme installation error notification --> - <string name="theme_install_error_title">Failed to install theme</string> - <string name="theme_install_error_message"><xliff:g id="theme">%1$s</xliff:g> failed to install</string> - <!-- Theme reset notification --> - <string name="theme_reset_notification_title">Theme reset</string> - <string name="theme_reset_notification_message">System theme restored due to multiple app crashes.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_accessThemeService">access theme service</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_accessThemeService">Allows an app to access the theme service. Should never be needed for normal apps.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_readThemes">read your theme info</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_readThemesDesc">Allows the app to read your themes and - determine which theme you have applied.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_writeThemes">modify your themes</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_writeThemesDesc">Allows the app to insert new themes and modify which theme you have applied.</string> <!-- Performance manager permission title --> <string name="permlab_perfAccess">access performance manager</string> <!-- Performance manager permission description --> @@ -180,9 +167,6 @@ <!-- LineageAudioService - observe session changes permission --> <string name="permlab_manage_audio_sessions">manage audio session changes</string> <string name="permdesc_manage_audio_sessions">Allows an app to send audio stream updates.</string> - <!-- QuickSettings: Themes tile --> - <string name="qs_themes_label">Themes</string> - <string name="qs_themes_content_description">Customise your theme</string> <!-- Privacy Guard --> <string name="privacy_guard_manager_title">Privacy Guard</string> <!-- Permissions used by remote preferences --> diff --git a/lineage/res/res/values-en-rIN/strings.xml b/lineage/res/res/values-en-rIN/strings.xml index 77fc29bb..b0118f54 100644 --- a/lineage/res/res/values-en-rIN/strings.xml +++ b/lineage/res/res/values-en-rIN/strings.xml @@ -119,25 +119,12 @@ <string name="permlab_thirdPartyKeyguard">third party lock screen</string> <!-- Third party keyguard permission description --> <string name="permdesc_thirdPartyKeyguard">Allows an app to be used as an insecure lock screen.</string> - <!-- Theme installation error notification --> - <string name="theme_install_error_title">Failed to install theme</string> - <string name="theme_install_error_message"><xliff:g id="theme">%1$s</xliff:g> failed to install</string> - <!-- Theme reset notification --> - <string name="theme_reset_notification_title">Theme reset</string> - <string name="theme_reset_notification_message">System theme restored due to multiple app crashes.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_accessThemeService">access theme service</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_accessThemeService">Allows an app to access the theme service. Should never be needed for normal apps.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_readThemes">read your theme info</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_readThemesDesc">Allows the app to read your themes and - determine which theme you have applied.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_writeThemes">modify your themes</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_writeThemesDesc">Allows the app to insert new themes and modify which theme you have applied.</string> <!-- Performance manager permission title --> <string name="permlab_perfAccess">access performance manager</string> <!-- Performance manager permission description --> @@ -180,9 +167,6 @@ <!-- LineageAudioService - observe session changes permission --> <string name="permlab_manage_audio_sessions">manage audio session changes</string> <string name="permdesc_manage_audio_sessions">Allows an app to send audio stream updates.</string> - <!-- QuickSettings: Themes tile --> - <string name="qs_themes_label">Themes</string> - <string name="qs_themes_content_description">Customise your theme</string> <!-- Privacy Guard --> <string name="privacy_guard_manager_title">Privacy Guard</string> <!-- Permissions used by remote preferences --> diff --git a/lineage/res/res/values-en-rPT/strings.xml b/lineage/res/res/values-en-rPT/strings.xml index ec4d0c1a..a2da064c 100644 --- a/lineage/res/res/values-en-rPT/strings.xml +++ b/lineage/res/res/values-en-rPT/strings.xml @@ -40,8 +40,6 @@ <!-- LiveDisplay strings --> <!-- Third party keyguard permission label --> <!-- Third party keyguard permission description --> - <!-- Theme installation error notification --> - <!-- Theme reset notification --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> @@ -64,7 +62,6 @@ <!-- LiveDisplay manager permission --> <!-- LineageAudioService - observe session changes permission --> <!-- LineageAudioService - observe session changes permission --> - <!-- QuickSettings: Themes tile --> <!-- Privacy Guard --> <!-- Permissions used by remote preferences --> </resources> diff --git a/lineage/res/res/values-eo/strings.xml b/lineage/res/res/values-eo/strings.xml index 387cd2eb..c47fa6aa 100644 --- a/lineage/res/res/values-eo/strings.xml +++ b/lineage/res/res/values-eo/strings.xml @@ -41,8 +41,6 @@ <string name="live_display_day">Tago</string> <!-- Third party keyguard permission label --> <!-- Third party keyguard permission description --> - <!-- Theme installation error notification --> - <!-- Theme reset notification --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> @@ -65,8 +63,6 @@ <!-- LiveDisplay manager permission --> <!-- LineageAudioService - observe session changes permission --> <!-- LineageAudioService - observe session changes permission --> - <!-- QuickSettings: Themes tile --> - <string name="qs_themes_label">Etosoj</string> <!-- Privacy Guard --> <!-- Permissions used by remote preferences --> </resources> diff --git a/lineage/res/res/values-es-rCO/strings.xml b/lineage/res/res/values-es-rCO/strings.xml index ec4d0c1a..a2da064c 100644 --- a/lineage/res/res/values-es-rCO/strings.xml +++ b/lineage/res/res/values-es-rCO/strings.xml @@ -40,8 +40,6 @@ <!-- LiveDisplay strings --> <!-- Third party keyguard permission label --> <!-- Third party keyguard permission description --> - <!-- Theme installation error notification --> - <!-- Theme reset notification --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> @@ -64,7 +62,6 @@ <!-- LiveDisplay manager permission --> <!-- LineageAudioService - observe session changes permission --> <!-- LineageAudioService - observe session changes permission --> - <!-- QuickSettings: Themes tile --> <!-- Privacy Guard --> <!-- Permissions used by remote preferences --> </resources> diff --git a/lineage/res/res/values-es-rMX/strings.xml b/lineage/res/res/values-es-rMX/strings.xml index 32e5e5ef..039eb48d 100644 --- a/lineage/res/res/values-es-rMX/strings.xml +++ b/lineage/res/res/values-es-rMX/strings.xml @@ -61,24 +61,12 @@ <string name="permlab_thirdPartyKeyguard">Pantalla de bloqueo con aplicación de terceros</string> <!-- Third party keyguard permission description --> <string name="permdesc_thirdPartyKeyguard">Permite a una aplicación ser utilizada como pantalla de bloqueo no segura.</string> - <!-- Theme installation error notification --> - <string name="theme_install_error_title">Error al instalar el tema</string> - <string name="theme_install_error_message">Error al instalar <xliff:g id="theme">%1$s</xliff:g></string> - <!-- Theme reset notification --> - <string name="theme_reset_notification_title">Tema restablecido</string> - <string name="theme_reset_notification_message">El tema del sistema fue restablecido debido a múltiples cierres de la aplicación.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_accessThemeService">acceso al servicio de temas</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_accessThemeService">Permite que la aplicación acceda al servicio de temas. Nunca debería ser necesario para aplicaciones normales.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_readThemes">leer información de los temas</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_readThemesDesc">Permite que la aplicación lea tus temas instalados y determine cual tema aplicaste.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_writeThemes">modifica tus temas</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_writeThemesDesc">Permite que la aplicación añada temas nuevos y modifique el tema aplicado actualmente.</string> <!-- Performance manager permission title --> <string name="permlab_perfAccess">acceder al supervisor de rendimiento</string> <!-- Performance manager permission description --> @@ -97,7 +85,6 @@ <!-- LiveDisplay manager permission --> <!-- LineageAudioService - observe session changes permission --> <!-- LineageAudioService - observe session changes permission --> - <!-- QuickSettings: Themes tile --> <!-- Privacy Guard --> <!-- Permissions used by remote preferences --> </resources> diff --git a/lineage/res/res/values-es-rUS/strings.xml b/lineage/res/res/values-es-rUS/strings.xml index 20da347e..08682961 100644 --- a/lineage/res/res/values-es-rUS/strings.xml +++ b/lineage/res/res/values-es-rUS/strings.xml @@ -119,24 +119,12 @@ <string name="permlab_thirdPartyKeyguard">pantalla bloqueada con aplicación de terceros</string> <!-- Third party keyguard permission description --> <string name="permdesc_thirdPartyKeyguard">Permite a una aplicación ser utilizada como pantalla bloqueada no segura.</string> - <!-- Theme installation error notification --> - <string name="theme_install_error_title">No se pudo instalar el tema</string> - <string name="theme_install_error_message">Error al instalar <xliff:g id="theme">%1$s </xliff:g></string> - <!-- Theme reset notification --> - <string name="theme_reset_notification_title">Tema restablecido</string> - <string name="theme_reset_notification_message">Tema del sistema restablecido debido a varios cierres de la aplicación.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_accessThemeService">acceso al servicio de temas</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_accessThemeService">Permite que la aplicación acceda al servicio de temas. No debería ser necesario para aplicaciones normales.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_readThemes">leer información de los temas</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_readThemesDesc">Permite que la aplicación lea los temas instalados y determine cuál es el tema aplicado.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_writeThemes">modificar tus temas</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_writeThemesDesc">Permite que la aplicación añada temas nuevos y modifique el tema aplicado.</string> <!-- Performance manager permission title --> <string name="permlab_perfAccess">acceso al gestor de rendimiento</string> <!-- Performance manager permission description --> @@ -179,9 +167,6 @@ <!-- LineageAudioService - observe session changes permission --> <string name="permlab_manage_audio_sessions">gestionar los cambios de sesión del audio</string> <string name="permdesc_manage_audio_sessions">Permitir a una aplicación enviar actualizaciones de la transmisión del audio.</string> - <!-- QuickSettings: Themes tile --> - <string name="qs_themes_label">Temas</string> - <string name="qs_themes_content_description">Personaliza tu tema</string> <!-- Privacy Guard --> <string name="privacy_guard_manager_title">Guardián de privacidad</string> <!-- Permissions used by remote preferences --> diff --git a/lineage/res/res/values-es/strings.xml b/lineage/res/res/values-es/strings.xml index 0db151e8..a9bc6f90 100644 --- a/lineage/res/res/values-es/strings.xml +++ b/lineage/res/res/values-es/strings.xml @@ -119,24 +119,12 @@ <string name="permlab_thirdPartyKeyguard">pantalla de bloqueo con aplicación de terceros</string> <!-- Third party keyguard permission description --> <string name="permdesc_thirdPartyKeyguard">Permite que una aplicación ser utilizada como pantalla de bloqueo no segura.</string> - <!-- Theme installation error notification --> - <string name="theme_install_error_title">Error al instalar el tema</string> - <string name="theme_install_error_message">Error al instalar <xliff:g id="theme">%1$s</xliff:g></string> - <!-- Theme reset notification --> - <string name="theme_reset_notification_title">Tema restablecido</string> - <string name="theme_reset_notification_message">Tema del sistema restablecido debido a múltiples cierres de la aplicación.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_accessThemeService">acceso al servicio de temas</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_accessThemeService">Permite que la aplicación acceda al servicio de temas. Nunca debería ser necesario para aplicaciones normales.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_readThemes">leer información del tema</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_readThemesDesc">Permite que la aplicación lea los temas instalados y determine cual es el que has aplicado.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_writeThemes">modificar los temas</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_writeThemesDesc">Permite que la aplicación añada nuevos temas y modifique el tema aplicado actualmente.</string> <!-- Performance manager permission title --> <string name="permlab_perfAccess">acceder al supervisor de rendimiento</string> <!-- Performance manager permission description --> @@ -179,9 +167,6 @@ <!-- LineageAudioService - observe session changes permission --> <string name="permlab_manage_audio_sessions">gestionar los cambios de la sesión de audio</string> <string name="permdesc_manage_audio_sessions">Permite a la aplicación enviar actualizaciones de la transmisión del audio.</string> - <!-- QuickSettings: Themes tile --> - <string name="qs_themes_label">Temas</string> - <string name="qs_themes_content_description">Personalizar tu tema</string> <!-- Privacy Guard --> <string name="privacy_guard_manager_title">Protección de la privacidad</string> <!-- Permissions used by remote preferences --> diff --git a/lineage/res/res/values-et-rEE/strings.xml b/lineage/res/res/values-et-rEE/strings.xml index e157ef1c..a954536a 100644 --- a/lineage/res/res/values-et-rEE/strings.xml +++ b/lineage/res/res/values-et-rEE/strings.xml @@ -67,8 +67,6 @@ <string name="live_display_night">Öö</string> <!-- Third party keyguard permission label --> <!-- Third party keyguard permission description --> - <!-- Theme installation error notification --> - <!-- Theme reset notification --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> @@ -91,7 +89,6 @@ <!-- LiveDisplay manager permission --> <!-- LineageAudioService - observe session changes permission --> <!-- LineageAudioService - observe session changes permission --> - <!-- QuickSettings: Themes tile --> <!-- Privacy Guard --> <!-- Permissions used by remote preferences --> </resources> diff --git a/lineage/res/res/values-eu-rES/strings.xml b/lineage/res/res/values-eu-rES/strings.xml index 69dc26bd..c7df8d6c 100644 --- a/lineage/res/res/values-eu-rES/strings.xml +++ b/lineage/res/res/values-eu-rES/strings.xml @@ -119,24 +119,12 @@ <string name="permlab_thirdPartyKeyguard">hirugarrengoen blokeo pantaila</string> <!-- Third party keyguard permission description --> <string name="permdesc_thirdPartyKeyguard">Aplikazio bat blokeo pantaila ez seguru gisa erabiltzea ahalbidetzen du.</string> - <!-- Theme installation error notification --> - <string name="theme_install_error_title">Ezin izan da gaia instalatu</string> - <string name="theme_install_error_message">Ezin izan da <xliff:g id="theme">%1$s</xliff:g> instalatu</string> - <!-- Theme reset notification --> - <string name="theme_reset_notification_title">Gaia leheneratu da</string> - <string name="theme_reset_notification_message">Sistemaren gaia berrezarri da hainbat aplikazio kraskatu direlako.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_accessThemeService">gaien zerbitzurako sarbidea</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_accessThemeService">Gaien zerbitzura sartzea ahalbidetzen dio aplikazioari. Aplikazio arruntek ez dute hau behar.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_readThemes">zure gaiari buruzko informazioa irakurri</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_readThemesDesc">Zure gaiak irakurri eta ezarrita duzuna zein den jakitea ahalbidetzen dio aplikazioari.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_writeThemes">zure gaiak aldatu</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_writeThemesDesc">Gai berriak sartu eta ezarrita duzuna aldatzea ahalbidetzen dio aplikazioari.</string> <!-- Performance manager permission title --> <string name="permlab_perfAccess">errendimendu kudeatzailea atzitu</string> <!-- Performance manager permission description --> @@ -179,9 +167,6 @@ <!-- LineageAudioService - observe session changes permission --> <string name="permlab_manage_audio_sessions">audio saioen aldaketak kudeatu</string> <string name="permdesc_manage_audio_sessions">Audio jarioen eguneratzeak bidaltzea ahalbidetzen dio aplikazioari.</string> - <!-- QuickSettings: Themes tile --> - <string name="qs_themes_label">Gaiak</string> - <string name="qs_themes_content_description">Pertsonalizatu zure gaia</string> <!-- Privacy Guard --> <string name="privacy_guard_manager_title">Privacy Guard</string> <!-- Permissions used by remote preferences --> diff --git a/lineage/res/res/values-fa/strings.xml b/lineage/res/res/values-fa/strings.xml index 199198d1..cb92910b 100644 --- a/lineage/res/res/values-fa/strings.xml +++ b/lineage/res/res/values-fa/strings.xml @@ -83,8 +83,6 @@ <string name="live_display_night">شب</string> <!-- Third party keyguard permission label --> <!-- Third party keyguard permission description --> - <!-- Theme installation error notification --> - <!-- Theme reset notification --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> @@ -107,7 +105,6 @@ <!-- LiveDisplay manager permission --> <!-- LineageAudioService - observe session changes permission --> <!-- LineageAudioService - observe session changes permission --> - <!-- QuickSettings: Themes tile --> <!-- Privacy Guard --> <!-- Permissions used by remote preferences --> </resources> diff --git a/lineage/res/res/values-fi/strings.xml b/lineage/res/res/values-fi/strings.xml index d4da3176..c757119e 100644 --- a/lineage/res/res/values-fi/strings.xml +++ b/lineage/res/res/values-fi/strings.xml @@ -119,24 +119,12 @@ <string name="permlab_thirdPartyKeyguard">kolmannen osapuolen lukitusnäyttö</string> <!-- Third party keyguard permission description --> <string name="permdesc_thirdPartyKeyguard">Sallii sovellusta käytettävän epäturvallisena lukitusnäyttönä.</string> - <!-- Theme installation error notification --> - <string name="theme_install_error_title">Teeman asennus epäonnistui</string> - <string name="theme_install_error_message">Teeman <xliff:g id="theme">%1$s</xliff:g> asennus epäonnistui</string> - <!-- Theme reset notification --> - <string name="theme_reset_notification_title">Teeman resetointi</string> - <string name="theme_reset_notification_message">Järjestelmän teema palautettu lukuisten sovellusvirheiden vuoksi.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_accessThemeService">pääsy teemapalveluun</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_accessThemeService">Sallii sovelluksen päästä teemapalveluun. Tavalliset sovellukset ei koskaan tarvitse tätä.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_readThemes">lue teeman tiedot</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_readThemesDesc">Sallii sovelluksen lukea teemojasi, ja tunnistaa käytössä olevan teeman.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_writeThemes">muokkaa teemoja</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_writeThemesDesc">Sallii sovelluksen asettaa uusia teemoja ja muokata käytössä olevaa teemaa.</string> <!-- Performance manager permission title --> <string name="permlab_perfAccess">pääse suorituskyvyn hallintaan</string> <!-- Performance manager permission description --> @@ -179,9 +167,6 @@ <!-- LineageAudioService - observe session changes permission --> <string name="permlab_manage_audio_sessions">hallitse ääni-istunnon muutoksia</string> <string name="permdesc_manage_audio_sessions">Sallii sovelluksen lähettää äänisyötteen päivityksiä.</string> - <!-- QuickSettings: Themes tile --> - <string name="qs_themes_label">Teemat</string> - <string name="qs_themes_content_description">Muokkaa teemaa</string> <!-- Privacy Guard --> <string name="privacy_guard_manager_title">Yksityisyyden suojaus</string> <!-- Permissions used by remote preferences --> diff --git a/lineage/res/res/values-fil-rPH/strings.xml b/lineage/res/res/values-fil-rPH/strings.xml index ec4d0c1a..a2da064c 100644 --- a/lineage/res/res/values-fil-rPH/strings.xml +++ b/lineage/res/res/values-fil-rPH/strings.xml @@ -40,8 +40,6 @@ <!-- LiveDisplay strings --> <!-- Third party keyguard permission label --> <!-- Third party keyguard permission description --> - <!-- Theme installation error notification --> - <!-- Theme reset notification --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> @@ -64,7 +62,6 @@ <!-- LiveDisplay manager permission --> <!-- LineageAudioService - observe session changes permission --> <!-- LineageAudioService - observe session changes permission --> - <!-- QuickSettings: Themes tile --> <!-- Privacy Guard --> <!-- Permissions used by remote preferences --> </resources> diff --git a/lineage/res/res/values-fr-rCA/strings.xml b/lineage/res/res/values-fr-rCA/strings.xml index ec4d0c1a..a2da064c 100644 --- a/lineage/res/res/values-fr-rCA/strings.xml +++ b/lineage/res/res/values-fr-rCA/strings.xml @@ -40,8 +40,6 @@ <!-- LiveDisplay strings --> <!-- Third party keyguard permission label --> <!-- Third party keyguard permission description --> - <!-- Theme installation error notification --> - <!-- Theme reset notification --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> @@ -64,7 +62,6 @@ <!-- LiveDisplay manager permission --> <!-- LineageAudioService - observe session changes permission --> <!-- LineageAudioService - observe session changes permission --> - <!-- QuickSettings: Themes tile --> <!-- Privacy Guard --> <!-- Permissions used by remote preferences --> </resources> diff --git a/lineage/res/res/values-fr/strings.xml b/lineage/res/res/values-fr/strings.xml index 2c9a3d9b..1ac1d315 100644 --- a/lineage/res/res/values-fr/strings.xml +++ b/lineage/res/res/values-fr/strings.xml @@ -119,25 +119,12 @@ <string name="permlab_thirdPartyKeyguard">écran de verrouillage alternatif</string> <!-- Third party keyguard permission description --> <string name="permdesc_thirdPartyKeyguard">Permet à l\'application d\'être utilisée comme un écran de verrouillage non sécurisé.</string> - <!-- Theme installation error notification --> - <string name="theme_install_error_title">Impossible d\'installer le thème</string> - <string name="theme_install_error_message">L\'installation de <xliff:g id="theme">%1$s</xliff:g> a échoué</string> - <!-- Theme reset notification --> - <string name="theme_reset_notification_title">Réinitialisation du thème</string> - <string name="theme_reset_notification_message">Thème du système restauré en raison de multiples plantages de l\'application.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_accessThemeService">accéder au service de thèmes</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_accessThemeService">Permet à l\'application d\'accéder au service de thèmes. Une application normale ne devrait pas en avoir besoin.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_readThemes">lire les informations de votre thème</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_readThemesDesc">Permet à une application de lire vos thèmes et - de déterminer quel thème vous avez appliqué.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_writeThemes">modifier vos thèmes</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_writeThemesDesc">Permet à une application d\'installer de nouveaux thèmes et de modifier le thème que vous avez appliqué.</string> <!-- Performance manager permission title --> <string name="permlab_perfAccess">accéder au gestionnaire de performance</string> <!-- Performance manager permission description --> @@ -180,9 +167,6 @@ <!-- LineageAudioService - observe session changes permission --> <string name="permlab_manage_audio_sessions">gérer les changements de session audio</string> <string name="permdesc_manage_audio_sessions">Autorise une application à envoyer des mises à jour du flux audio.</string> - <!-- QuickSettings: Themes tile --> - <string name="qs_themes_label">Thèmes</string> - <string name="qs_themes_content_description">Personnaliser votre thème</string> <!-- Privacy Guard --> <string name="privacy_guard_manager_title">Protection des données</string> <!-- Permissions used by remote preferences --> diff --git a/lineage/res/res/values-frp-rIT/strings.xml b/lineage/res/res/values-frp-rIT/strings.xml index ec4d0c1a..a2da064c 100644 --- a/lineage/res/res/values-frp-rIT/strings.xml +++ b/lineage/res/res/values-frp-rIT/strings.xml @@ -40,8 +40,6 @@ <!-- LiveDisplay strings --> <!-- Third party keyguard permission label --> <!-- Third party keyguard permission description --> - <!-- Theme installation error notification --> - <!-- Theme reset notification --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> @@ -64,7 +62,6 @@ <!-- LiveDisplay manager permission --> <!-- LineageAudioService - observe session changes permission --> <!-- LineageAudioService - observe session changes permission --> - <!-- QuickSettings: Themes tile --> <!-- Privacy Guard --> <!-- Permissions used by remote preferences --> </resources> diff --git a/lineage/res/res/values-fy-rNL/strings.xml b/lineage/res/res/values-fy-rNL/strings.xml index ec4d0c1a..a2da064c 100644 --- a/lineage/res/res/values-fy-rNL/strings.xml +++ b/lineage/res/res/values-fy-rNL/strings.xml @@ -40,8 +40,6 @@ <!-- LiveDisplay strings --> <!-- Third party keyguard permission label --> <!-- Third party keyguard permission description --> - <!-- Theme installation error notification --> - <!-- Theme reset notification --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> @@ -64,7 +62,6 @@ <!-- LiveDisplay manager permission --> <!-- LineageAudioService - observe session changes permission --> <!-- LineageAudioService - observe session changes permission --> - <!-- QuickSettings: Themes tile --> <!-- Privacy Guard --> <!-- Permissions used by remote preferences --> </resources> diff --git a/lineage/res/res/values-ga-rIE/strings.xml b/lineage/res/res/values-ga-rIE/strings.xml index ec4d0c1a..a2da064c 100644 --- a/lineage/res/res/values-ga-rIE/strings.xml +++ b/lineage/res/res/values-ga-rIE/strings.xml @@ -40,8 +40,6 @@ <!-- LiveDisplay strings --> <!-- Third party keyguard permission label --> <!-- Third party keyguard permission description --> - <!-- Theme installation error notification --> - <!-- Theme reset notification --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> @@ -64,7 +62,6 @@ <!-- LiveDisplay manager permission --> <!-- LineageAudioService - observe session changes permission --> <!-- LineageAudioService - observe session changes permission --> - <!-- QuickSettings: Themes tile --> <!-- Privacy Guard --> <!-- Permissions used by remote preferences --> </resources> diff --git a/lineage/res/res/values-gd-rGB/strings.xml b/lineage/res/res/values-gd-rGB/strings.xml index ec4d0c1a..a2da064c 100644 --- a/lineage/res/res/values-gd-rGB/strings.xml +++ b/lineage/res/res/values-gd-rGB/strings.xml @@ -40,8 +40,6 @@ <!-- LiveDisplay strings --> <!-- Third party keyguard permission label --> <!-- Third party keyguard permission description --> - <!-- Theme installation error notification --> - <!-- Theme reset notification --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> @@ -64,7 +62,6 @@ <!-- LiveDisplay manager permission --> <!-- LineageAudioService - observe session changes permission --> <!-- LineageAudioService - observe session changes permission --> - <!-- QuickSettings: Themes tile --> <!-- Privacy Guard --> <!-- Permissions used by remote preferences --> </resources> diff --git a/lineage/res/res/values-gl-rES/strings.xml b/lineage/res/res/values-gl-rES/strings.xml index 6d0f29d1..1d4cac43 100644 --- a/lineage/res/res/values-gl-rES/strings.xml +++ b/lineage/res/res/values-gl-rES/strings.xml @@ -119,25 +119,12 @@ <string name="permlab_thirdPartyKeyguard">bloqueo de pantalla de terceiros</string> <!-- Third party keyguard permission description --> <string name="permdesc_thirdPartyKeyguard">Permitir que unha app sexa usada como bloqueo de pantalla inseguro.</string> - <!-- Theme installation error notification --> - <string name="theme_install_error_title">Non se puido instalar o tema</string> - <string name="theme_install_error_message">Non se puido instalar <xliff:g id="theme">%1$s</xliff:g></string> - <!-- Theme reset notification --> - <string name="theme_reset_notification_title">Restabelecer o tema</string> - <string name="theme_reset_notification_message">Restableceuse o tema debido a varios fallos da aplicación.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_accessThemeService">acceso ao servizo de temas</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_accessThemeService">Permitir que unha aplicación acceda aos temas. Non debería ser necesario para aplicacións normais.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_readThemes">ler a información do seu tema</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_readThemesDesc">Permitir que a aplicación lea os seus temas e - determine cal deles está en uso.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_writeThemes">modificar os seus temas</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_writeThemesDesc">Permitir que a aplicación insira novos temas e modifique o que estea en uso.</string> <!-- Performance manager permission title --> <string name="permlab_perfAccess">acceso ao xestor de rendemento</string> <!-- Performance manager permission description --> @@ -180,9 +167,6 @@ <!-- LineageAudioService - observe session changes permission --> <string name="permlab_manage_audio_sessions">xestionar os trocos da sesión de son</string> <string name="permdesc_manage_audio_sessions">Permite a unha aplicación enviar actualizacións de fluxo de son.</string> - <!-- QuickSettings: Themes tile --> - <string name="qs_themes_label">Temas</string> - <string name="qs_themes_content_description">Personalice o seu tema</string> <!-- Privacy Guard --> <string name="privacy_guard_manager_title">Proteción da Privacidade</string> <!-- Permissions used by remote preferences --> diff --git a/lineage/res/res/values-gu-rIN/strings.xml b/lineage/res/res/values-gu-rIN/strings.xml index 3ef3fae4..0e8d0440 100644 --- a/lineage/res/res/values-gu-rIN/strings.xml +++ b/lineage/res/res/values-gu-rIN/strings.xml @@ -104,24 +104,12 @@ <string name="permlab_thirdPartyKeyguard">ત્રાહિત પક્ષ લૉક સ્ક્રીન</string> <!-- Third party keyguard permission description --> <string name="permdesc_thirdPartyKeyguard">ઍપને અસુરક્ષિત લૉક સ્ક્રીન તરીકે ઉપયોગ કરવાની છૂટ આપે છે.</string> - <!-- Theme installation error notification --> - <string name="theme_install_error_title">થીમ ઇન્સ્ટૉલ કરવામાં નિષ્ફળતા</string> - <string name="theme_install_error_message"><xliff:g id="theme">%1$s</xliff:g>ઇન્સ્ટૉલ કરવામાં નિષ્ફળતા</string> - <!-- Theme reset notification --> - <string name="theme_reset_notification_title">થીમ રિસેટ</string> - <string name="theme_reset_notification_message">સિસ્ટમ થીમ ઘણી એપ્લિકેશન ક્રેશ થવાને કારણે પુનઃસ્થાપિત થઈ.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_accessThemeService">થીમ સેવા ઍક્સેસ કરો</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_accessThemeService">ઍપને થીમ સેવા ઍક્સેસ કરવાની છૂટ આપે છે. સામાન્ય એપ્સ માટે ક્યારેય જરૂર પડવી જોઈએ નહી.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_readThemes">તમારી થીમ માહિતી વાંચો</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_readThemesDesc">ઍપને તમારી થીમ વાંચવાની છૂટ આપે છે અને નિર્ધારિત કરે છે કે તમે કઈ થીમ લાગુ કરી છે.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_writeThemes">તમારી થીમમાં ફેરફાર કરો</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_writeThemesDesc">ઍપને નવી થીમ દાખલ કરવાની છૂટ આપે છે અને તમે લાગુ કરેલ થીમમાં ફેરફાર કરવાની છૂટ આપે છે.</string> <!-- Performance manager permission title --> <string name="permlab_perfAccess">ઍક્સેસ કામગીરી મેનેજર</string> <!-- Performance manager permission description --> @@ -140,7 +128,6 @@ <!-- LiveDisplay manager permission --> <!-- LineageAudioService - observe session changes permission --> <!-- LineageAudioService - observe session changes permission --> - <!-- QuickSettings: Themes tile --> <!-- Privacy Guard --> <!-- Permissions used by remote preferences --> </resources> diff --git a/lineage/res/res/values-hi/strings.xml b/lineage/res/res/values-hi/strings.xml index ec4d0c1a..a2da064c 100644 --- a/lineage/res/res/values-hi/strings.xml +++ b/lineage/res/res/values-hi/strings.xml @@ -40,8 +40,6 @@ <!-- LiveDisplay strings --> <!-- Third party keyguard permission label --> <!-- Third party keyguard permission description --> - <!-- Theme installation error notification --> - <!-- Theme reset notification --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> @@ -64,7 +62,6 @@ <!-- LiveDisplay manager permission --> <!-- LineageAudioService - observe session changes permission --> <!-- LineageAudioService - observe session changes permission --> - <!-- QuickSettings: Themes tile --> <!-- Privacy Guard --> <!-- Permissions used by remote preferences --> </resources> diff --git a/lineage/res/res/values-hr/strings.xml b/lineage/res/res/values-hr/strings.xml index 6206a04c..69e8007d 100644 --- a/lineage/res/res/values-hr/strings.xml +++ b/lineage/res/res/values-hr/strings.xml @@ -118,24 +118,12 @@ <string name="permlab_thirdPartyKeyguard">zaključavanje zaslona treće strane</string> <!-- Third party keyguard permission description --> <string name="permdesc_thirdPartyKeyguard">Dopušta aplikaciji da se koristi kao nesiguran zaslon zaključavanja.</string> - <!-- Theme installation error notification --> - <string name="theme_install_error_title">Instalacija teme nije uspjela</string> - <string name="theme_install_error_message">Nije uspjela instalacija teme <xliff:g id="theme">%1$s</xliff:g></string> - <!-- Theme reset notification --> - <string name="theme_reset_notification_title">Vraćanje početne teme</string> - <string name="theme_reset_notification_message">Tema sustava je vraćana na početnu zbog višestrukih rušenja aplikacija.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_accessThemeService">pristupiti servisu tema</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_accessThemeService">Dopušta aplikaciji pristup servisu tema. Za obične aplikacije nikada ne bi trebao biti potreban.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_readThemes">pročitati informacije vaše teme</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_readThemesDesc">Dopušta aplikaciji čitanje vaših tema i određivanje teme koju koristite.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_writeThemes">urediti vaše teme</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_writeThemesDesc">Dopušta aplikaciji dodavati nove teme i urediti temu koju ste primjenili.</string> <!-- Performance manager permission title --> <string name="permlab_perfAccess">pristup upravitelju performansi</string> <!-- Performance manager permission description --> @@ -178,9 +166,6 @@ <!-- LineageAudioService - observe session changes permission --> <string name="permlab_manage_audio_sessions">upravljaj promjenama zvučnih sesija</string> <string name="permdesc_manage_audio_sessions">Omogućuje aplikaciji slanje ažuriranja audio streama.</string> - <!-- QuickSettings: Themes tile --> - <string name="qs_themes_label">Teme</string> - <string name="qs_themes_content_description">Prilagodite svoju temu</string> <!-- Privacy Guard --> <string name="privacy_guard_manager_title">Nadzor privatnosti</string> <!-- Permissions used by remote preferences --> diff --git a/lineage/res/res/values-hu/strings.xml b/lineage/res/res/values-hu/strings.xml index 3af60a13..6c918ba6 100644 --- a/lineage/res/res/values-hu/strings.xml +++ b/lineage/res/res/values-hu/strings.xml @@ -119,25 +119,12 @@ <string name="permlab_thirdPartyKeyguard">harmadik fél zárképernyő</string> <!-- Third party keyguard permission description --> <string name="permdesc_thirdPartyKeyguard">Lehetővé teszi az alkalmazás számára, hogy egy nem biztonságos zárképernyőként használja.</string> - <!-- Theme installation error notification --> - <string name="theme_install_error_title">Téma telepítése sikertelen</string> - <string name="theme_install_error_message"><xliff:g id="theme">%1$s</xliff:g> telepítése sikertelen</string> - <!-- Theme reset notification --> - <string name="theme_reset_notification_title">Téma viszaállítása</string> - <string name="theme_reset_notification_message">Több alkalmazás összeomlása miatt a rendszertéma visszaállításra került.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_accessThemeService">hozzáférés a témaszolgáltatáshoz</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_accessThemeService">Lehetővé teszi az alkalmazás számára, hogy hozzáférjen a témaszolgáltatáshoz. Általános alkalmazásoknak soha nem kell ilyen engedély.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_readThemes">téma információjának megtekintése</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_readThemesDesc">Lehetővé teszi az alkalmazás számára, - hogy megtekintse a témákat és megállapítsa, melyik téma aktív.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_writeThemes">témák módosítása</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_writeThemesDesc">Lehetővé teszi az alkalmazás számára, hogy új témákat hozzon létre és módosítsa a jelenleg aktív témát.</string> <!-- Performance manager permission title --> <string name="permlab_perfAccess">hozzáférés a teljesítmény kezelőhöz</string> <!-- Performance manager permission description --> @@ -180,9 +167,6 @@ <!-- LineageAudioService - observe session changes permission --> <string name="permlab_manage_audio_sessions">audió munkamenet változások kezelése</string> <string name="permdesc_manage_audio_sessions">Lehetővé teszi az alkalmazás számára, hogy audio stream frissítéseket küldjön.</string> - <!-- QuickSettings: Themes tile --> - <string name="qs_themes_label">Témák</string> - <string name="qs_themes_content_description">Téma testreszabása</string> <!-- Privacy Guard --> <string name="privacy_guard_manager_title">Adatvédelmi beállítások</string> <!-- Permissions used by remote preferences --> diff --git a/lineage/res/res/values-hy-rAM/strings.xml b/lineage/res/res/values-hy-rAM/strings.xml index ec4d0c1a..a2da064c 100644 --- a/lineage/res/res/values-hy-rAM/strings.xml +++ b/lineage/res/res/values-hy-rAM/strings.xml @@ -40,8 +40,6 @@ <!-- LiveDisplay strings --> <!-- Third party keyguard permission label --> <!-- Third party keyguard permission description --> - <!-- Theme installation error notification --> - <!-- Theme reset notification --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> @@ -64,7 +62,6 @@ <!-- LiveDisplay manager permission --> <!-- LineageAudioService - observe session changes permission --> <!-- LineageAudioService - observe session changes permission --> - <!-- QuickSettings: Themes tile --> <!-- Privacy Guard --> <!-- Permissions used by remote preferences --> </resources> diff --git a/lineage/res/res/values-in/strings.xml b/lineage/res/res/values-in/strings.xml index ac0c4043..ee7314d3 100644 --- a/lineage/res/res/values-in/strings.xml +++ b/lineage/res/res/values-in/strings.xml @@ -117,24 +117,12 @@ <string name="permlab_thirdPartyKeyguard">layar kunci pihak ketiga</string> <!-- Third party keyguard permission description --> <string name="permdesc_thirdPartyKeyguard">Mengizinkan sebuah aplikasi untuk digunakan sebagai layar kunci yang tidak aman.</string> - <!-- Theme installation error notification --> - <string name="theme_install_error_title">Gagal menginstal tema</string> - <string name="theme_install_error_message"><xliff:g id="theme">%1$s</xliff:g> gagal diinstal</string> - <!-- Theme reset notification --> - <string name="theme_reset_notification_title">Memasang ulang Tema</string> - <string name="theme_reset_notification_message">Tema sistem dikembalikan karena beberapa aplikasi mogok (crash).</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_accessThemeService">akses layanan tema</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_accessThemeService">Izinkan sebuah aplikasi untuk mengakses layanan tema. Tidak dibutuhkan untuk aplikasi biasa.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_readThemes">baca info tema Anda</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_readThemesDesc">Izinkan aplikasi untuk membaca tema dan memilih tema yang telah Anda terapkan.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_writeThemes">mengubah tema Anda</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_writeThemesDesc">Izinkan aplikasi untuk memasukkan tema-tema baru dan tema yang telah Anda terapkan.</string> <!-- Performance manager permission title --> <string name="permlab_perfAccess">akses pengelola kinerja</string> <!-- Performance manager permission description --> @@ -177,9 +165,6 @@ <!-- LineageAudioService - observe session changes permission --> <string name="permlab_manage_audio_sessions">kelola perubahan sesi audio</string> <string name="permdesc_manage_audio_sessions">Memungkinkan aplikasi untuk mengirim pembaruan stream audio.</string> - <!-- QuickSettings: Themes tile --> - <string name="qs_themes_label">Tema</string> - <string name="qs_themes_content_description">Sesuaikan tema Anda</string> <!-- Privacy Guard --> <string name="privacy_guard_manager_title">Penjaga Privasi</string> <!-- Permissions used by remote preferences --> diff --git a/lineage/res/res/values-is-rIS/strings.xml b/lineage/res/res/values-is-rIS/strings.xml index ec4d0c1a..a2da064c 100644 --- a/lineage/res/res/values-is-rIS/strings.xml +++ b/lineage/res/res/values-is-rIS/strings.xml @@ -40,8 +40,6 @@ <!-- LiveDisplay strings --> <!-- Third party keyguard permission label --> <!-- Third party keyguard permission description --> - <!-- Theme installation error notification --> - <!-- Theme reset notification --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> @@ -64,7 +62,6 @@ <!-- LiveDisplay manager permission --> <!-- LineageAudioService - observe session changes permission --> <!-- LineageAudioService - observe session changes permission --> - <!-- QuickSettings: Themes tile --> <!-- Privacy Guard --> <!-- Permissions used by remote preferences --> </resources> diff --git a/lineage/res/res/values-it/strings.xml b/lineage/res/res/values-it/strings.xml index 0e51085e..33325559 100644 --- a/lineage/res/res/values-it/strings.xml +++ b/lineage/res/res/values-it/strings.xml @@ -119,24 +119,12 @@ <string name="permlab_thirdPartyKeyguard">blocco schermo di terzi</string> <!-- Third party keyguard permission description --> <string name="permdesc_thirdPartyKeyguard">Consenti ad un\'app di essere usata come blocco schermo non sicuro.</string> - <!-- Theme installation error notification --> - <string name="theme_install_error_title">Installazione tema fallita</string> - <string name="theme_install_error_message">Installazione <xliff:g id="theme">%1$s</xliff:g> fallita</string> - <!-- Theme reset notification --> - <string name="theme_reset_notification_title">Ripristino tema</string> - <string name="theme_reset_notification_message">Tema di sistema ripristinato a causa di molteplici crash.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_accessThemeService">accede al servizio tema</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_accessThemeService">Consente all\'app di accedere al servizio temi. Non dovrebbe mai essere necessario per le app normali.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_readThemes">leggi informazioni tema</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_readThemesDesc">Consenti all\'app di leggere i tuoi temi e determinare quale tema hai applicato.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_writeThemes">modifica i tuoi temi</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_writeThemesDesc">Consente all\'app di inserire nuovi temi e modificare il tema hai applicato.</string> <!-- Performance manager permission title --> <string name="permlab_perfAccess">accesso gestione performance</string> <!-- Performance manager permission description --> @@ -179,9 +167,6 @@ <!-- LineageAudioService - observe session changes permission --> <string name="permlab_manage_audio_sessions">gestisci cambiamenti di sessioni audio</string> <string name="permdesc_manage_audio_sessions">Consenti ad un\'app di inviare aggiornamenti del flusso audio.</string> - <!-- QuickSettings: Themes tile --> - <string name="qs_themes_label">Temi</string> - <string name="qs_themes_content_description">Personalizza il tuo tema</string> <!-- Privacy Guard --> <string name="privacy_guard_manager_title">Privacy Guard</string> <!-- Permissions used by remote preferences --> diff --git a/lineage/res/res/values-iw/strings.xml b/lineage/res/res/values-iw/strings.xml index 54cbcc75..573b1342 100644 --- a/lineage/res/res/values-iw/strings.xml +++ b/lineage/res/res/values-iw/strings.xml @@ -119,24 +119,12 @@ <string name="permlab_thirdPartyKeyguard">מסך נעילה של צד שלישי</string> <!-- Third party keyguard permission description --> <string name="permdesc_thirdPartyKeyguard">מאפשר ליישום לשמש כמסך נעילה לא מאובטח.</string> - <!-- Theme installation error notification --> - <string name="theme_install_error_title">התקנת ערכת העיצוב נכשלה</string> - <string name="theme_install_error_message">התקנת <xliff:g id="theme">%1$s </xliff:g> נכשלה</string> - <!-- Theme reset notification --> - <string name="theme_reset_notification_title">איפוס ערכת עיצוב</string> - <string name="theme_reset_notification_message">ערכת העיצוב של המערכת שוחזרה עקב קריסות יישומים מרובות.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_accessThemeService">גש לשירות ערכות העיצוב</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_accessThemeService">מאפשר ליישום לגשת לשירות ערכות העיצוב. לא אמור להידרש ליישומים רגילים לעולם.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_readThemes">קרא את פרטי ערכת העיצוב שלך</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_readThemesDesc">מאפשר ליישום לקרוא את ערכות העיצוב הקיימות, ולקבוע איזו ערכה החלת.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_writeThemes">שנה את ערכות העיצוב שלך</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_writeThemesDesc">מאפשר ליישום להוסיף ערכות עיצוב חדשות ולשנות את הערכה המוחלת.</string> <!-- Performance manager permission title --> <string name="permlab_perfAccess">גש למנהל הביצועים</string> <!-- Performance manager permission description --> @@ -179,9 +167,6 @@ <!-- LineageAudioService - observe session changes permission --> <string name="permlab_manage_audio_sessions">נהל עדכוני פעולות במערכת השמע</string> <string name="permdesc_manage_audio_sessions">מאפשר ליישום לשלוח עדכוני זרימת שמע.</string> - <!-- QuickSettings: Themes tile --> - <string name="qs_themes_label">ערכות עיצוב</string> - <string name="qs_themes_content_description">התאם אישית את ערכת הנושא שלך</string> <!-- Privacy Guard --> <string name="privacy_guard_manager_title">שומר הפרטיות</string> <!-- Permissions used by remote preferences --> diff --git a/lineage/res/res/values-ja/strings.xml b/lineage/res/res/values-ja/strings.xml index 9d601426..7f15d855 100644 --- a/lineage/res/res/values-ja/strings.xml +++ b/lineage/res/res/values-ja/strings.xml @@ -119,24 +119,12 @@ <string name="permlab_thirdPartyKeyguard">サードパーティのロック画面</string> <!-- Third party keyguard permission description --> <string name="permdesc_thirdPartyKeyguard">パスワードのないロック画面として使用されることをアプリに許可します。</string> - <!-- Theme installation error notification --> - <string name="theme_install_error_title">テーマをインストールできませんでした</string> - <string name="theme_install_error_message"><xliff:g id="theme">%1$s</xliff:g>をインストールできませんでした</string> - <!-- Theme reset notification --> - <string name="theme_reset_notification_title">テーマのリセット</string> - <string name="theme_reset_notification_message">複数のアプリがクラッシュしたため、システムのテーマが復元されました。</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_accessThemeService">テーマサービスへのアクセス</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_accessThemeService">テーマサービスへのアクセスをアプリに許可します。通常のアプリで必要とされることはありません。</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_readThemes">テーマ情報の読み取り</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_readThemesDesc">テーマの読み取りや適用しているテーマの特定をアプリに許可します。</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_writeThemes">テーマの変更</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_writeThemesDesc">新しいテーマの挿入や適用しているテーマの変更をアプリに許可します。</string> <!-- Performance manager permission title --> <string name="permlab_perfAccess">パフォーマンスマネージャーへのアクセス</string> <!-- Performance manager permission description --> @@ -179,9 +167,6 @@ <!-- LineageAudioService - observe session changes permission --> <string name="permlab_manage_audio_sessions">オーディオセッションの変更の管理</string> <string name="permdesc_manage_audio_sessions">オーディオストリームの更新の送信をアプリに許可します。</string> - <!-- QuickSettings: Themes tile --> - <string name="qs_themes_label">テーマ</string> - <string name="qs_themes_content_description">テーマをカスタマイズする</string> <!-- Privacy Guard --> <string name="privacy_guard_manager_title">プライバシーガード</string> <!-- Permissions used by remote preferences --> diff --git a/lineage/res/res/values-ka-rGE/strings.xml b/lineage/res/res/values-ka-rGE/strings.xml index ec4d0c1a..a2da064c 100644 --- a/lineage/res/res/values-ka-rGE/strings.xml +++ b/lineage/res/res/values-ka-rGE/strings.xml @@ -40,8 +40,6 @@ <!-- LiveDisplay strings --> <!-- Third party keyguard permission label --> <!-- Third party keyguard permission description --> - <!-- Theme installation error notification --> - <!-- Theme reset notification --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> @@ -64,7 +62,6 @@ <!-- LiveDisplay manager permission --> <!-- LineageAudioService - observe session changes permission --> <!-- LineageAudioService - observe session changes permission --> - <!-- QuickSettings: Themes tile --> <!-- Privacy Guard --> <!-- Permissions used by remote preferences --> </resources> diff --git a/lineage/res/res/values-kk-rKZ/strings.xml b/lineage/res/res/values-kk-rKZ/strings.xml index ec4d0c1a..a2da064c 100644 --- a/lineage/res/res/values-kk-rKZ/strings.xml +++ b/lineage/res/res/values-kk-rKZ/strings.xml @@ -40,8 +40,6 @@ <!-- LiveDisplay strings --> <!-- Third party keyguard permission label --> <!-- Third party keyguard permission description --> - <!-- Theme installation error notification --> - <!-- Theme reset notification --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> @@ -64,7 +62,6 @@ <!-- LiveDisplay manager permission --> <!-- LineageAudioService - observe session changes permission --> <!-- LineageAudioService - observe session changes permission --> - <!-- QuickSettings: Themes tile --> <!-- Privacy Guard --> <!-- Permissions used by remote preferences --> </resources> diff --git a/lineage/res/res/values-km-rKH/strings.xml b/lineage/res/res/values-km-rKH/strings.xml index ec4d0c1a..a2da064c 100644 --- a/lineage/res/res/values-km-rKH/strings.xml +++ b/lineage/res/res/values-km-rKH/strings.xml @@ -40,8 +40,6 @@ <!-- LiveDisplay strings --> <!-- Third party keyguard permission label --> <!-- Third party keyguard permission description --> - <!-- Theme installation error notification --> - <!-- Theme reset notification --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> @@ -64,7 +62,6 @@ <!-- LiveDisplay manager permission --> <!-- LineageAudioService - observe session changes permission --> <!-- LineageAudioService - observe session changes permission --> - <!-- QuickSettings: Themes tile --> <!-- Privacy Guard --> <!-- Permissions used by remote preferences --> </resources> diff --git a/lineage/res/res/values-kn-rIN/strings.xml b/lineage/res/res/values-kn-rIN/strings.xml index ddcbda88..c9618170 100644 --- a/lineage/res/res/values-kn-rIN/strings.xml +++ b/lineage/res/res/values-kn-rIN/strings.xml @@ -104,8 +104,6 @@ <string name="permlab_thirdPartyKeyguard">ಥರ್ಡ್ ಪಾರ್ಟಿ ಲಾಕ್ ಸ್ಕ್ರೀನ್</string> <!-- Third party keyguard permission description --> <string name="permdesc_thirdPartyKeyguard">ಅಸುರಕ್ಷಿತ ಲಾಕ್ ಸ್ಕ್ರೀನ್ ಎಂಬುದಾಗಿ ಒಂದು ಅಪ್ಲಿ ಗಳನ್ನು ಬಳಸಲು ಒಂದು ಅಪ್ಲಿಕೇಶನ್ ಅನುವು ಮಾಡುತ್ತದೆ.</string> - <!-- Theme installation error notification --> - <!-- Theme reset notification --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> @@ -128,7 +126,6 @@ <!-- LiveDisplay manager permission --> <!-- LineageAudioService - observe session changes permission --> <!-- LineageAudioService - observe session changes permission --> - <!-- QuickSettings: Themes tile --> <!-- Privacy Guard --> <!-- Permissions used by remote preferences --> </resources> diff --git a/lineage/res/res/values-ko/strings.xml b/lineage/res/res/values-ko/strings.xml index d7be0bb0..d3b51fc3 100644 --- a/lineage/res/res/values-ko/strings.xml +++ b/lineage/res/res/values-ko/strings.xml @@ -119,24 +119,12 @@ <string name="permlab_thirdPartyKeyguard">서드 파티 잠금 화면</string> <!-- Third party keyguard permission description --> <string name="permdesc_thirdPartyKeyguard">앱을 안전하지 않은 잠금 화면으로 사용할 수 있도록 허용합니다.</string> - <!-- Theme installation error notification --> - <string name="theme_install_error_title">테마 설치 실패</string> - <string name="theme_install_error_message"><xliff:g id="theme">%1$s </xliff:g> 설치 실패</string> - <!-- Theme reset notification --> - <string name="theme_reset_notification_title">테마 초기화</string> - <string name="theme_reset_notification_message">잦은 앱 충돌로 인해 시스템 테마가 복원되었습니다.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_accessThemeService">테마 서비스에 액세스</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_accessThemeService">앱이 테마 서비스에 접근할 수 있도록 허용합니다. 일반 앱에서는 필요 없는 권한입니다.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_readThemes">테마 정보 읽기</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_readThemesDesc">앱이 설치된 테마들을 읽어들이고 현재 적용된 테마를 확인할 수 있도록 허용합니다.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_writeThemes">테마 정보 수정</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_writeThemesDesc">앱이 새로운 테마를 설치하거나 다른 테마를 적용할 수 있도록 허용합니다.</string> <!-- Performance manager permission title --> <string name="permlab_perfAccess">성능 관리자에 액세스</string> <!-- Performance manager permission description --> @@ -179,9 +167,6 @@ <!-- LineageAudioService - observe session changes permission --> <string name="permlab_manage_audio_sessions">오디오 세션 변경 관리</string> <string name="permdesc_manage_audio_sessions">앱을 통해 오디오 스트림 업데이트를 보내도록 합니다.</string> - <!-- QuickSettings: Themes tile --> - <string name="qs_themes_label">테마</string> - <string name="qs_themes_content_description">테마 사용자 정의</string> <!-- Privacy Guard --> <string name="privacy_guard_manager_title">프라이버시 가드</string> <!-- Permissions used by remote preferences --> diff --git a/lineage/res/res/values-ku/strings.xml b/lineage/res/res/values-ku/strings.xml index b2eb2db2..3ad397cd 100644 --- a/lineage/res/res/values-ku/strings.xml +++ b/lineage/res/res/values-ku/strings.xml @@ -43,8 +43,6 @@ <!-- LiveDisplay strings --> <!-- Third party keyguard permission label --> <!-- Third party keyguard permission description --> - <!-- Theme installation error notification --> - <!-- Theme reset notification --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> @@ -67,7 +65,6 @@ <!-- LiveDisplay manager permission --> <!-- LineageAudioService - observe session changes permission --> <!-- LineageAudioService - observe session changes permission --> - <!-- QuickSettings: Themes tile --> <!-- Privacy Guard --> <!-- Permissions used by remote preferences --> </resources> diff --git a/lineage/res/res/values-ky-rKG/strings.xml b/lineage/res/res/values-ky-rKG/strings.xml index ec4d0c1a..a2da064c 100644 --- a/lineage/res/res/values-ky-rKG/strings.xml +++ b/lineage/res/res/values-ky-rKG/strings.xml @@ -40,8 +40,6 @@ <!-- LiveDisplay strings --> <!-- Third party keyguard permission label --> <!-- Third party keyguard permission description --> - <!-- Theme installation error notification --> - <!-- Theme reset notification --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> @@ -64,7 +62,6 @@ <!-- LiveDisplay manager permission --> <!-- LineageAudioService - observe session changes permission --> <!-- LineageAudioService - observe session changes permission --> - <!-- QuickSettings: Themes tile --> <!-- Privacy Guard --> <!-- Permissions used by remote preferences --> </resources> diff --git a/lineage/res/res/values-lb/strings.xml b/lineage/res/res/values-lb/strings.xml index 16ce614e..09753b44 100644 --- a/lineage/res/res/values-lb/strings.xml +++ b/lineage/res/res/values-lb/strings.xml @@ -71,23 +71,12 @@ <string name="permlab_thirdPartyKeyguard">Spärschierm vun Drëttubidder</string> <!-- Third party keyguard permission description --> <string name="permdesc_thirdPartyKeyguard">Erlaabt der App, als onséchere Spärschierm benotzt ze ginn.</string> - <!-- Theme installation error notification --> - <string name="theme_install_error_title">Design konnt net installéiert ginn</string> - <!-- Theme reset notification --> - <string name="theme_reset_notification_title">Design-Reset</string> - <string name="theme_reset_notification_message">De System-Design gouf wéinst App-Ofstierz recuperéiert.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_accessThemeService">op den Design-Service zougräifen</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_accessThemeService">Erlaabt der App den Accès op den Design-Service. Dat misst fir normal Appen ni gebraucht ginn.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_readThemes">Design-Info liesen</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_readThemesDesc">Erlaabt der App, d\'Designen auszeliesen an ze kucke wéi en Design applizéiert ass.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_writeThemes">aktiven Design änneren</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_writeThemesDesc">Erlaabt der App, nei Designen dobäizesetzen an den aktiven Design z\'änneren.</string> <!-- Performance manager permission title --> <!-- Performance manager permission description --> <!-- Access live lock screen manager service permission label --> @@ -104,7 +93,6 @@ <!-- LiveDisplay manager permission --> <!-- LineageAudioService - observe session changes permission --> <!-- LineageAudioService - observe session changes permission --> - <!-- QuickSettings: Themes tile --> <!-- Privacy Guard --> <!-- Permissions used by remote preferences --> </resources> diff --git a/lineage/res/res/values-lo-rLA/strings.xml b/lineage/res/res/values-lo-rLA/strings.xml index ec4d0c1a..a2da064c 100644 --- a/lineage/res/res/values-lo-rLA/strings.xml +++ b/lineage/res/res/values-lo-rLA/strings.xml @@ -40,8 +40,6 @@ <!-- LiveDisplay strings --> <!-- Third party keyguard permission label --> <!-- Third party keyguard permission description --> - <!-- Theme installation error notification --> - <!-- Theme reset notification --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> @@ -64,7 +62,6 @@ <!-- LiveDisplay manager permission --> <!-- LineageAudioService - observe session changes permission --> <!-- LineageAudioService - observe session changes permission --> - <!-- QuickSettings: Themes tile --> <!-- Privacy Guard --> <!-- Permissions used by remote preferences --> </resources> diff --git a/lineage/res/res/values-lt/strings.xml b/lineage/res/res/values-lt/strings.xml index 5e09446d..5f3398df 100644 --- a/lineage/res/res/values-lt/strings.xml +++ b/lineage/res/res/values-lt/strings.xml @@ -83,8 +83,6 @@ <string name="live_display_night">Naktis</string> <!-- Third party keyguard permission label --> <!-- Third party keyguard permission description --> - <!-- Theme installation error notification --> - <!-- Theme reset notification --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> @@ -107,7 +105,6 @@ <!-- LiveDisplay manager permission --> <!-- LineageAudioService - observe session changes permission --> <!-- LineageAudioService - observe session changes permission --> - <!-- QuickSettings: Themes tile --> <!-- Privacy Guard --> <!-- Permissions used by remote preferences --> </resources> diff --git a/lineage/res/res/values-lv/strings.xml b/lineage/res/res/values-lv/strings.xml index ec4d0c1a..a2da064c 100644 --- a/lineage/res/res/values-lv/strings.xml +++ b/lineage/res/res/values-lv/strings.xml @@ -40,8 +40,6 @@ <!-- LiveDisplay strings --> <!-- Third party keyguard permission label --> <!-- Third party keyguard permission description --> - <!-- Theme installation error notification --> - <!-- Theme reset notification --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> @@ -64,7 +62,6 @@ <!-- LiveDisplay manager permission --> <!-- LineageAudioService - observe session changes permission --> <!-- LineageAudioService - observe session changes permission --> - <!-- QuickSettings: Themes tile --> <!-- Privacy Guard --> <!-- Permissions used by remote preferences --> </resources> diff --git a/lineage/res/res/values-mk-rMK/strings.xml b/lineage/res/res/values-mk-rMK/strings.xml index ec4d0c1a..a2da064c 100644 --- a/lineage/res/res/values-mk-rMK/strings.xml +++ b/lineage/res/res/values-mk-rMK/strings.xml @@ -40,8 +40,6 @@ <!-- LiveDisplay strings --> <!-- Third party keyguard permission label --> <!-- Third party keyguard permission description --> - <!-- Theme installation error notification --> - <!-- Theme reset notification --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> @@ -64,7 +62,6 @@ <!-- LiveDisplay manager permission --> <!-- LineageAudioService - observe session changes permission --> <!-- LineageAudioService - observe session changes permission --> - <!-- QuickSettings: Themes tile --> <!-- Privacy Guard --> <!-- Permissions used by remote preferences --> </resources> diff --git a/lineage/res/res/values-ml-rIN/strings.xml b/lineage/res/res/values-ml-rIN/strings.xml index bdb1ea83..abed3096 100644 --- a/lineage/res/res/values-ml-rIN/strings.xml +++ b/lineage/res/res/values-ml-rIN/strings.xml @@ -104,8 +104,6 @@ <string name="permlab_thirdPartyKeyguard">മൂന്നാം കക്ഷി ലോക്ക് സ്ക്രീൻ</string> <!-- Third party keyguard permission description --> <string name="permdesc_thirdPartyKeyguard">സുരക്ഷിതമല്ലാത്ത ലോക്ക് സ്ക്രീന് ആയി ഉപയോഗിക്കുവാന് ഒരു ആപ്ലിക്കേഷനെ അനുവദിക്കുന്നു.</string> - <!-- Theme installation error notification --> - <!-- Theme reset notification --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> @@ -128,7 +126,6 @@ <!-- LiveDisplay manager permission --> <!-- LineageAudioService - observe session changes permission --> <!-- LineageAudioService - observe session changes permission --> - <!-- QuickSettings: Themes tile --> <!-- Privacy Guard --> <!-- Permissions used by remote preferences --> </resources> diff --git a/lineage/res/res/values-mn-rMN/strings.xml b/lineage/res/res/values-mn-rMN/strings.xml index ec4d0c1a..a2da064c 100644 --- a/lineage/res/res/values-mn-rMN/strings.xml +++ b/lineage/res/res/values-mn-rMN/strings.xml @@ -40,8 +40,6 @@ <!-- LiveDisplay strings --> <!-- Third party keyguard permission label --> <!-- Third party keyguard permission description --> - <!-- Theme installation error notification --> - <!-- Theme reset notification --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> @@ -64,7 +62,6 @@ <!-- LiveDisplay manager permission --> <!-- LineageAudioService - observe session changes permission --> <!-- LineageAudioService - observe session changes permission --> - <!-- QuickSettings: Themes tile --> <!-- Privacy Guard --> <!-- Permissions used by remote preferences --> </resources> diff --git a/lineage/res/res/values-mr-rIN/strings.xml b/lineage/res/res/values-mr-rIN/strings.xml index 20476672..73c01f30 100644 --- a/lineage/res/res/values-mr-rIN/strings.xml +++ b/lineage/res/res/values-mr-rIN/strings.xml @@ -104,24 +104,12 @@ <string name="permlab_thirdPartyKeyguard">त्रयस्थ पक्ष लॉक स्क्रीन</string> <!-- Third party keyguard permission description --> <string name="permdesc_thirdPartyKeyguard">अनुप्रयोगाला एक असुरक्षित लॉक स्क्रीन वापरू देते.</string> - <!-- Theme installation error notification --> - <string name="theme_install_error_title">थीम स्थापित करण्यात अपयशी</string> - <string name="theme_install_error_message"><xliff:g id="theme">%1$s</xliff:g> इंस्टॉल करण्यास अयशस्वी</string> - <!-- Theme reset notification --> - <string name="theme_reset_notification_title">थीम रीसेट</string> - <string name="theme_reset_notification_message">अनेक अनुप्रयोग क्रॅश झाल्यामुळे सिस्टिम थीम पुनर्स्थापित केली गेली.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_accessThemeService">थीम सेवा ऍक्सेस करा</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_accessThemeService">अॅप ला टॉर्च सेवा ऍक्सेस करण्याची परवानगी देते. सामान्य अॅपसाठी कधीही गरज भासू नये.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_readThemes">तुमची थीम माहिती वाचा</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_readThemesDesc">अॅप तुमच्या थीम्स वाचू आणि तुम्ही कोणती थीम लागू केली आहे ते ठरवू देते.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_writeThemes">तुमच्या थीम्स सुधारित करा</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_writeThemesDesc">अॅप नवीन थीम्स समाविष्ट करण्याची आणि तुम्ही कोणती थीम लागू केली आहे ती सुधारित करण्याची परवानगी देते.</string> <!-- Performance manager permission title --> <string name="permlab_perfAccess">प्रवेश कामगिरी व्यवस्थापक</string> <!-- Performance manager permission description --> @@ -140,7 +128,6 @@ <!-- LiveDisplay manager permission --> <!-- LineageAudioService - observe session changes permission --> <!-- LineageAudioService - observe session changes permission --> - <!-- QuickSettings: Themes tile --> <!-- Privacy Guard --> <!-- Permissions used by remote preferences --> </resources> diff --git a/lineage/res/res/values-ms-rMY/strings.xml b/lineage/res/res/values-ms-rMY/strings.xml index ec4d0c1a..a2da064c 100644 --- a/lineage/res/res/values-ms-rMY/strings.xml +++ b/lineage/res/res/values-ms-rMY/strings.xml @@ -40,8 +40,6 @@ <!-- LiveDisplay strings --> <!-- Third party keyguard permission label --> <!-- Third party keyguard permission description --> - <!-- Theme installation error notification --> - <!-- Theme reset notification --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> @@ -64,7 +62,6 @@ <!-- LiveDisplay manager permission --> <!-- LineageAudioService - observe session changes permission --> <!-- LineageAudioService - observe session changes permission --> - <!-- QuickSettings: Themes tile --> <!-- Privacy Guard --> <!-- Permissions used by remote preferences --> </resources> diff --git a/lineage/res/res/values-my-rMM/strings.xml b/lineage/res/res/values-my-rMM/strings.xml index ec4d0c1a..a2da064c 100644 --- a/lineage/res/res/values-my-rMM/strings.xml +++ b/lineage/res/res/values-my-rMM/strings.xml @@ -40,8 +40,6 @@ <!-- LiveDisplay strings --> <!-- Third party keyguard permission label --> <!-- Third party keyguard permission description --> - <!-- Theme installation error notification --> - <!-- Theme reset notification --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> @@ -64,7 +62,6 @@ <!-- LiveDisplay manager permission --> <!-- LineageAudioService - observe session changes permission --> <!-- LineageAudioService - observe session changes permission --> - <!-- QuickSettings: Themes tile --> <!-- Privacy Guard --> <!-- Permissions used by remote preferences --> </resources> diff --git a/lineage/res/res/values-nb/strings.xml b/lineage/res/res/values-nb/strings.xml index fbfb41f1..c6a6ccfc 100644 --- a/lineage/res/res/values-nb/strings.xml +++ b/lineage/res/res/values-nb/strings.xml @@ -119,25 +119,12 @@ <string name="permlab_thirdPartyKeyguard">tredjeparts låseskjerm</string> <!-- Third party keyguard permission description --> <string name="permdesc_thirdPartyKeyguard">Tillater en app å brukes som en usikret låseskjerm.</string> - <!-- Theme installation error notification --> - <string name="theme_install_error_title">Kunne ikke installere tema</string> - <string name="theme_install_error_message"><xliff:g id="theme">%1$s </xliff:g> kunne ikke installere</string> - <!-- Theme reset notification --> - <string name="theme_reset_notification_title">Reset tema</string> - <string name="theme_reset_notification_message">System tema er gjenopprettet pga. flere app krasj.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_accessThemeService">få tilgang til tematjeneste</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_accessThemeService">Tillater en app å få tilgang til tematjenesten. Skal aldri være nødvendig for normale apper.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_readThemes">les temainformasjon</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_readThemesDesc">Tillater apper å lese av dine temaer og - hvilket tema du har valgt.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_writeThemes">endre temaer</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_writeThemesDesc">Lar apper installere nye temaer og endre de temaene du har valgt.</string> <!-- Performance manager permission title --> <string name="permlab_perfAccess">tilgang til ytelsesadministrereren</string> <!-- Performance manager permission description --> @@ -180,9 +167,6 @@ <!-- LineageAudioService - observe session changes permission --> <string name="permlab_manage_audio_sessions">administrer lyd økt endringer</string> <string name="permdesc_manage_audio_sessions">Gir en app tillatelse til å sende lydstrømning oppdateringer.</string> - <!-- QuickSettings: Themes tile --> - <string name="qs_themes_label">Temaer</string> - <string name="qs_themes_content_description">Tilpass temaet ditt</string> <!-- Privacy Guard --> <string name="privacy_guard_manager_title">Personvernvakt</string> <!-- Permissions used by remote preferences --> diff --git a/lineage/res/res/values-ne-rNP/strings.xml b/lineage/res/res/values-ne-rNP/strings.xml index ec4d0c1a..a2da064c 100644 --- a/lineage/res/res/values-ne-rNP/strings.xml +++ b/lineage/res/res/values-ne-rNP/strings.xml @@ -40,8 +40,6 @@ <!-- LiveDisplay strings --> <!-- Third party keyguard permission label --> <!-- Third party keyguard permission description --> - <!-- Theme installation error notification --> - <!-- Theme reset notification --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> @@ -64,7 +62,6 @@ <!-- LiveDisplay manager permission --> <!-- LineageAudioService - observe session changes permission --> <!-- LineageAudioService - observe session changes permission --> - <!-- QuickSettings: Themes tile --> <!-- Privacy Guard --> <!-- Permissions used by remote preferences --> </resources> diff --git a/lineage/res/res/values-nl/strings.xml b/lineage/res/res/values-nl/strings.xml index 1a38a2c9..3b64e4c4 100644 --- a/lineage/res/res/values-nl/strings.xml +++ b/lineage/res/res/values-nl/strings.xml @@ -119,24 +119,12 @@ <string name="permlab_thirdPartyKeyguard">vergrendelingsscherm van derden</string> <!-- Third party keyguard permission description --> <string name="permdesc_thirdPartyKeyguard">Hiermee kan de app gebruikt worden als onbeveiligd vergrendelingsscherm.</string> - <!-- Theme installation error notification --> - <string name="theme_install_error_title">Thema installeren mislukt</string> - <string name="theme_install_error_message">Installatie van <xliff:g id="theme">%1$s</xliff:g> mislukt</string> - <!-- Theme reset notification --> - <string name="theme_reset_notification_title">Thema opnieuw instellen</string> - <string name="theme_reset_notification_message">Systeemthema hersteld als gevolg van meerdere gecrashte apps.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_accessThemeService">toegang tot themaservice</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_accessThemeService">Hiermee kan de app toegang krijgen tot de themaservice. Nooit vereist voor normale apps.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_readThemes">informatie over uw thema\'s lezen</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_readThemesDesc">Hiermee kan de app informatie lezen over uw thema\'s en bepalen welk thema u hebt toegepast.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_writeThemes">uw thema\'s aanpassen</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_writeThemesDesc">Hiermee kan de app nieuwe thema\'s invoegen en wijzigen welk thema u hebt toegepast.</string> <!-- Performance manager permission title --> <string name="permlab_perfAccess">Toegang tot prestatiebeheer</string> <!-- Performance manager permission description --> @@ -179,9 +167,6 @@ <!-- LineageAudioService - observe session changes permission --> <string name="permlab_manage_audio_sessions">wijzigingen in audiosessie beheren</string> <string name="permdesc_manage_audio_sessions">Hiermee kan de app audiostreams bijwerken.</string> - <!-- QuickSettings: Themes tile --> - <string name="qs_themes_label">Thema\'s</string> - <string name="qs_themes_content_description">Thema aanpassen</string> <!-- Privacy Guard --> <string name="privacy_guard_manager_title">Privacybescherming</string> <!-- Permissions used by remote preferences --> diff --git a/lineage/res/res/values-oc-rFR/strings.xml b/lineage/res/res/values-oc-rFR/strings.xml index ec4d0c1a..a2da064c 100644 --- a/lineage/res/res/values-oc-rFR/strings.xml +++ b/lineage/res/res/values-oc-rFR/strings.xml @@ -40,8 +40,6 @@ <!-- LiveDisplay strings --> <!-- Third party keyguard permission label --> <!-- Third party keyguard permission description --> - <!-- Theme installation error notification --> - <!-- Theme reset notification --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> @@ -64,7 +62,6 @@ <!-- LiveDisplay manager permission --> <!-- LineageAudioService - observe session changes permission --> <!-- LineageAudioService - observe session changes permission --> - <!-- QuickSettings: Themes tile --> <!-- Privacy Guard --> <!-- Permissions used by remote preferences --> </resources> diff --git a/lineage/res/res/values-or-rIN/strings.xml b/lineage/res/res/values-or-rIN/strings.xml index 5dec0a1e..af45adf5 100644 --- a/lineage/res/res/values-or-rIN/strings.xml +++ b/lineage/res/res/values-or-rIN/strings.xml @@ -104,8 +104,6 @@ <string name="permlab_thirdPartyKeyguard">ତୃତୀୟ ପଷ ଲକ୍ ସ୍କ୍ରିନ୍</string> <!-- Third party keyguard permission description --> <string name="permdesc_thirdPartyKeyguard">ଅସୁରଷିତ ଲକ୍ ସ୍କ୍ରିନ୍ ଭାବେ ବ୍ୟବହୃତ ହେବା ପାଇଁ ଆପ୍ଲିକେସନ୍କୁ ଅ୍ନୁମତି ଦିଏ</string> - <!-- Theme installation error notification --> - <!-- Theme reset notification --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> @@ -128,7 +126,6 @@ <!-- LiveDisplay manager permission --> <!-- LineageAudioService - observe session changes permission --> <!-- LineageAudioService - observe session changes permission --> - <!-- QuickSettings: Themes tile --> <!-- Privacy Guard --> <!-- Permissions used by remote preferences --> </resources> diff --git a/lineage/res/res/values-pa-rIN/strings.xml b/lineage/res/res/values-pa-rIN/strings.xml index ec4d0c1a..a2da064c 100644 --- a/lineage/res/res/values-pa-rIN/strings.xml +++ b/lineage/res/res/values-pa-rIN/strings.xml @@ -40,8 +40,6 @@ <!-- LiveDisplay strings --> <!-- Third party keyguard permission label --> <!-- Third party keyguard permission description --> - <!-- Theme installation error notification --> - <!-- Theme reset notification --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> @@ -64,7 +62,6 @@ <!-- LiveDisplay manager permission --> <!-- LineageAudioService - observe session changes permission --> <!-- LineageAudioService - observe session changes permission --> - <!-- QuickSettings: Themes tile --> <!-- Privacy Guard --> <!-- Permissions used by remote preferences --> </resources> diff --git a/lineage/res/res/values-pl/strings.xml b/lineage/res/res/values-pl/strings.xml index a168e15b..a82b1025 100644 --- a/lineage/res/res/values-pl/strings.xml +++ b/lineage/res/res/values-pl/strings.xml @@ -119,24 +119,12 @@ <string name="permlab_thirdPartyKeyguard">blokada ekranu zewnętrznego dostawcy</string> <!-- Third party keyguard permission description --> <string name="permdesc_thirdPartyKeyguard">Pozwala na wykorzystanie aplikacji jako niezabezpieczonego ekranu blokady.</string> - <!-- Theme installation error notification --> - <string name="theme_install_error_title">Nie udało się zainstalować motywu</string> - <string name="theme_install_error_message">Nie udało się zainstalować motywu: <xliff:g id="theme">%1$s </xliff:g></string> - <!-- Theme reset notification --> - <string name="theme_reset_notification_title">Reset motywu</string> - <string name="theme_reset_notification_message">Domyślny motyw przywrócony z powodu wielu awarii aplikacji.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_accessThemeService">dostęp do usługi motywów</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_accessThemeService">Umożliwia aplikacji dostęp do usługi motywów (nie powinno być wymagane przez standardowe aplikacje).</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_readThemes">odczytanie informacji o motywie</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_readThemesDesc">Zezwala aplikacji na dostęp do twoich motywów i decydowanie, który z nich ma zostać użyty.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_writeThemes">modyfikowanie Twoich motywów</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_writeThemesDesc">Zezwala aplikacji na dodawanie nowych motywów i modyfikowanie tego, którego używasz.</string> <!-- Performance manager permission title --> <string name="permlab_perfAccess">dostęp do menedżera wydajności</string> <!-- Performance manager permission description --> @@ -179,9 +167,6 @@ <!-- LineageAudioService - observe session changes permission --> <string name="permlab_manage_audio_sessions">zarządza zmianami sesji audio</string> <string name="permdesc_manage_audio_sessions">Pozwala aplikacji na wysyłanie aktualizacji strumienia audio.</string> - <!-- QuickSettings: Themes tile --> - <string name="qs_themes_label">Motywy</string> - <string name="qs_themes_content_description">Dostosuj swój motyw</string> <!-- Privacy Guard --> <string name="privacy_guard_manager_title">Ochrona prywatności</string> <!-- Permissions used by remote preferences --> diff --git a/lineage/res/res/values-pt-rBR/strings.xml b/lineage/res/res/values-pt-rBR/strings.xml index f332ef14..4372f093 100644 --- a/lineage/res/res/values-pt-rBR/strings.xml +++ b/lineage/res/res/values-pt-rBR/strings.xml @@ -119,25 +119,12 @@ <string name="permlab_thirdPartyKeyguard">tela de bloqueio de terceiros</string> <!-- Third party keyguard permission description --> <string name="permdesc_thirdPartyKeyguard">Permite que um aplicativo para ser usado como uma tela de bloqueio insegura.</string> - <!-- Theme installation error notification --> - <string name="theme_install_error_title">Falha ao instalar o tema</string> - <string name="theme_install_error_message">Falha ao instalar <xliff:g id="theme">%1$s</xliff:g></string> - <!-- Theme reset notification --> - <string name="theme_reset_notification_title">Redefinir tema</string> - <string name="theme_reset_notification_message">O tema do sistema foi restaurado devido a erros nos aplicativos.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_accessThemeService">acessar o serviço de temas</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_accessThemeService">Permite que um aplicativo acesse o serviço de temas. Nunca deve ser necessário para aplicativos normais.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_readThemes">ler informações do tema</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_readThemesDesc">Permite ao aplicativo ler os seus temas e - determinar qual o tema que está aplicado.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_writeThemes">modificar seus temas</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_writeThemesDesc">Permite ao aplicativo inserir novos temas e modificar o tema que está aplicado.</string> <!-- Performance manager permission title --> <string name="permlab_perfAccess">acessar o gerenciador de desempenho</string> <!-- Performance manager permission description --> @@ -180,9 +167,6 @@ <!-- LineageAudioService - observe session changes permission --> <string name="permlab_manage_audio_sessions">gerenciar as alterações da sessão de áudio</string> <string name="permdesc_manage_audio_sessions">Permite que um app envie atualizações de fluxo de áudio.</string> - <!-- QuickSettings: Themes tile --> - <string name="qs_themes_label">Temas</string> - <string name="qs_themes_content_description">Personalizar os seus temas</string> <!-- Privacy Guard --> <string name="privacy_guard_manager_title">Proteção à privacidade</string> <!-- Permissions used by remote preferences --> diff --git a/lineage/res/res/values-pt-rPT/strings.xml b/lineage/res/res/values-pt-rPT/strings.xml index b4770abe..7ee70164 100644 --- a/lineage/res/res/values-pt-rPT/strings.xml +++ b/lineage/res/res/values-pt-rPT/strings.xml @@ -119,25 +119,12 @@ <string name="permlab_thirdPartyKeyguard">ecrã de bloqueio de terceiros</string> <!-- Third party keyguard permission description --> <string name="permdesc_thirdPartyKeyguard">Permite que uma aplicação seja utilizada como ecrã de bloqueio inseguro.</string> - <!-- Theme installation error notification --> - <string name="theme_install_error_title">Falha ao instalar o tema</string> - <string name="theme_install_error_message">Falha ao instalar <xliff:g id="theme">%1$s</xliff:g></string> - <!-- Theme reset notification --> - <string name="theme_reset_notification_title">Repor tema</string> - <string name="theme_reset_notification_message">O tema do sistema foi restaurado devido a vários erros nas aplicações.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_accessThemeService">aceder ao serviço de temas</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_accessThemeService">Permite que uma aplicação aceda ao serviço de temas. Nunca deverá ser necessário para aplicações normais.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_readThemes">ler a informação do seu tema</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_readThemesDesc">Permite que a aplicação leia os seus temas e - determine qual o tema que tem aplicado.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_writeThemes">modificar os seus temas</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_writeThemesDesc">Permite que a aplicação insira novos temas e modifique o tema que tem aplicado.</string> <!-- Performance manager permission title --> <string name="permlab_perfAccess">aceder ao gestor de desempenho</string> <!-- Performance manager permission description --> @@ -180,9 +167,6 @@ <!-- LineageAudioService - observe session changes permission --> <string name="permlab_manage_audio_sessions">gerir sessões de alterações de som</string> <string name="permdesc_manage_audio_sessions">Permite que uma aplicação envie atualizações de fluxo de áudio.</string> - <!-- QuickSettings: Themes tile --> - <string name="qs_themes_label">Temas</string> - <string name="qs_themes_content_description">Personalize o seu tema</string> <!-- Privacy Guard --> <string name="privacy_guard_manager_title">Proteção da Privacidade</string> <!-- Permissions used by remote preferences --> diff --git a/lineage/res/res/values-rm/strings.xml b/lineage/res/res/values-rm/strings.xml index ec4d0c1a..a2da064c 100644 --- a/lineage/res/res/values-rm/strings.xml +++ b/lineage/res/res/values-rm/strings.xml @@ -40,8 +40,6 @@ <!-- LiveDisplay strings --> <!-- Third party keyguard permission label --> <!-- Third party keyguard permission description --> - <!-- Theme installation error notification --> - <!-- Theme reset notification --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> @@ -64,7 +62,6 @@ <!-- LiveDisplay manager permission --> <!-- LineageAudioService - observe session changes permission --> <!-- LineageAudioService - observe session changes permission --> - <!-- QuickSettings: Themes tile --> <!-- Privacy Guard --> <!-- Permissions used by remote preferences --> </resources> diff --git a/lineage/res/res/values-ro/strings.xml b/lineage/res/res/values-ro/strings.xml index 34c92405..d8f17b21 100644 --- a/lineage/res/res/values-ro/strings.xml +++ b/lineage/res/res/values-ro/strings.xml @@ -119,25 +119,12 @@ <string name="permlab_thirdPartyKeyguard">ecran de blocare terț</string> <!-- Third party keyguard permission description --> <string name="permdesc_thirdPartyKeyguard">Permite unei aplicații să fie utilizată ca ecran de blocare nesigur.</string> - <!-- Theme installation error notification --> - <string name="theme_install_error_title">Instalarea temei a eșuat</string> - <string name="theme_install_error_message"><xliff:g id="theme">%1$s</xliff:g> nu s-a instalat</string> - <!-- Theme reset notification --> - <string name="theme_reset_notification_title">Resetare temă</string> - <string name="theme_reset_notification_message">Tema de sistem a fost restaurată datorită unor multiple crash-uri.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_accessThemeService">accesare serviciul pentru teme</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_accessThemeService">Permite unei aplicații să acceseze serviciul pentru teme. Aplicațiile normale nu ar trebui să aibă nevoie de aceasta.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_readThemes">citiți informațiile temei dvs.</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_readThemesDesc">Permite aplicației să citească temele dumneavoastră și - să determine pe care ați aplicat-o.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_writeThemes">modifică teme</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_writeThemesDesc">Permite aplicației să adauge teme noi și să le modifice pe cele aplicate.</string> <!-- Performance manager permission title --> <string name="permlab_perfAccess">acces la managerul de performanță</string> <!-- Performance manager permission description --> @@ -180,9 +167,6 @@ <!-- LineageAudioService - observe session changes permission --> <string name="permlab_manage_audio_sessions">gestionează schimbările de sesiune audio</string> <string name="permdesc_manage_audio_sessions">Permite unei aplicații să trimită actualizări de flux audio.</string> - <!-- QuickSettings: Themes tile --> - <string name="qs_themes_label">Teme</string> - <string name="qs_themes_content_description">Personalizați tema</string> <!-- Privacy Guard --> <string name="privacy_guard_manager_title">Gardian Intimitate</string> <!-- Permissions used by remote preferences --> diff --git a/lineage/res/res/values-ru/strings.xml b/lineage/res/res/values-ru/strings.xml index 9624467c..0da7d69b 100644 --- a/lineage/res/res/values-ru/strings.xml +++ b/lineage/res/res/values-ru/strings.xml @@ -119,24 +119,12 @@ <string name="permlab_thirdPartyKeyguard">cторонний экран блокировки</string> <!-- Third party keyguard permission description --> <string name="permdesc_thirdPartyKeyguard">Приложение сможет работать в качестве небезопасного метода блокировки экрана.</string> - <!-- Theme installation error notification --> - <string name="theme_install_error_title">Не удалось установить тему</string> - <string name="theme_install_error_message">Не удалось установить «<xliff:g id="theme">%1$s</xliff:g>»</string> - <!-- Theme reset notification --> - <string name="theme_reset_notification_title">Тема отключена</string> - <string name="theme_reset_notification_message">Из-за сбоев приложений восстановлена стандартная тема.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_accessThemeService">доступ к службе тем</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_accessThemeService">Приложение сможет получать доступ к службе тем. Это разрешение не используется обычными приложениями.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_readThemes">чтение информации о теме</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_readThemesDesc">Приложение сможет считывать темы оформления и определять, какая тема сейчас применена.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_writeThemes">изменение тем</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_writeThemesDesc">Приложение сможет осуществлять установку новых тем оформления и изменять текущую тему.</string> <!-- Performance manager permission title --> <string name="permlab_perfAccess">доступ к менеджеру производительности</string> <!-- Performance manager permission description --> @@ -179,9 +167,6 @@ <!-- LineageAudioService - observe session changes permission --> <string name="permlab_manage_audio_sessions">управление изменениями аудиосеансов</string> <string name="permdesc_manage_audio_sessions">Приложение сможет изменять параметры аудиопотоков.</string> - <!-- QuickSettings: Themes tile --> - <string name="qs_themes_label">Темы</string> - <string name="qs_themes_content_description">Настройте свою тему</string> <!-- Privacy Guard --> <string name="privacy_guard_manager_title">Защищенный режим</string> <!-- Permissions used by remote preferences --> diff --git a/lineage/res/res/values-si-rLK/strings.xml b/lineage/res/res/values-si-rLK/strings.xml index ec4d0c1a..a2da064c 100644 --- a/lineage/res/res/values-si-rLK/strings.xml +++ b/lineage/res/res/values-si-rLK/strings.xml @@ -40,8 +40,6 @@ <!-- LiveDisplay strings --> <!-- Third party keyguard permission label --> <!-- Third party keyguard permission description --> - <!-- Theme installation error notification --> - <!-- Theme reset notification --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> @@ -64,7 +62,6 @@ <!-- LiveDisplay manager permission --> <!-- LineageAudioService - observe session changes permission --> <!-- LineageAudioService - observe session changes permission --> - <!-- QuickSettings: Themes tile --> <!-- Privacy Guard --> <!-- Permissions used by remote preferences --> </resources> diff --git a/lineage/res/res/values-sk/strings.xml b/lineage/res/res/values-sk/strings.xml index 368aacd3..00296d5e 100644 --- a/lineage/res/res/values-sk/strings.xml +++ b/lineage/res/res/values-sk/strings.xml @@ -119,24 +119,12 @@ <string name="permlab_thirdPartyKeyguard">zámok obrazovky tretej strany</string> <!-- Third party keyguard permission description --> <string name="permdesc_thirdPartyKeyguard">Umožňuje použiť aplikáciu ako nezabezpečený zámok obrazovky.</string> - <!-- Theme installation error notification --> - <string name="theme_install_error_title">Inštalácia témy zlyhala</string> - <string name="theme_install_error_message"><xliff:g id="theme">%1$s </xliff:g> sa nepodarilo nainštalovať</string> - <!-- Theme reset notification --> - <string name="theme_reset_notification_title">Obnoviť tému</string> - <string name="theme_reset_notification_message">Systémová téma sa obnovila z dôvodu viacerých pádov aplikácií.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_accessThemeService">prístup k službe tém</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_accessThemeService">Umožňuje aplikácii prístup k službe na správu tém. Toto povolenie nie je bežné pre štandardné aplikácie.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_readThemes">čítať informácie vašej témy</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_readThemesDesc">Umožňuje aplikácii čítať vaše témy a určiť, ktorú tému ste použili.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_writeThemes">upraviť vaše témy</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_writeThemesDesc">Umožňuje aplikácii vkladať nové témy a upraviť tému, ktorú ste použili.</string> <!-- Performance manager permission title --> <string name="permlab_perfAccess">prístup k správe výkonu</string> <!-- Performance manager permission description --> @@ -179,9 +167,6 @@ <!-- LineageAudioService - observe session changes permission --> <string name="permlab_manage_audio_sessions">spravovať zmeny audio relácie</string> <string name="permdesc_manage_audio_sessions">Umožňuje aktualizovať zvukové relácie.</string> - <!-- QuickSettings: Themes tile --> - <string name="qs_themes_label">Témy</string> - <string name="qs_themes_content_description">Prispôsobiť vašu tému</string> <!-- Privacy Guard --> <string name="privacy_guard_manager_title">Ochrana súkromia</string> <!-- Permissions used by remote preferences --> diff --git a/lineage/res/res/values-sl/strings.xml b/lineage/res/res/values-sl/strings.xml index 93bcf18e..2d68dce6 100644 --- a/lineage/res/res/values-sl/strings.xml +++ b/lineage/res/res/values-sl/strings.xml @@ -119,25 +119,12 @@ <string name="permlab_thirdPartyKeyguard">zaklenjen zaslon tretjih oseb</string> <!-- Third party keyguard permission description --> <string name="permdesc_thirdPartyKeyguard">Dovoli, da se aplikacija lahko uporabi kot nezanesljiv zaklenjen zaslon.</string> - <!-- Theme installation error notification --> - <string name="theme_install_error_title">Namestitev teme je spodletela</string> - <string name="theme_install_error_message">Namestitev <xliff:g id="theme">%1$s</xliff:g> je spodletela</string> - <!-- Theme reset notification --> - <string name="theme_reset_notification_title">Ponastavitev teme</string> - <string name="theme_reset_notification_message">Sistemska tema obnovljena zaradi večkratnih sesutij aplikacije.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_accessThemeService">dostop do storitve tem</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_accessThemeService">Dovoli aplikaciji dostop do storitve tem. Navadno ni potrebno za običajne aplikacije.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_readThemes">branje podatkov o temi</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_readThemesDesc">Dovoli aplikaciji branje vaših tem in - določanje, katero temo uporabljate.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_writeThemes">spreminjanje tem</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_writeThemesDesc">Dovoli aplikaciji vstavljanje novih tem in spreminjanje uporabljene teme.</string> <!-- Performance manager permission title --> <string name="permlab_perfAccess">dostop do upravljalnika zmogljivosti</string> <!-- Performance manager permission description --> @@ -180,9 +167,6 @@ <!-- LineageAudioService - observe session changes permission --> <string name="permlab_manage_audio_sessions">upravljanje sprememb zvočne seje</string> <string name="permdesc_manage_audio_sessions">Dovoli aplikaciji pošiljanje posodobitev zvočnih pretokov.</string> - <!-- QuickSettings: Themes tile --> - <string name="qs_themes_label">Teme</string> - <string name="qs_themes_content_description">Prilagodite svojo temo</string> <!-- Privacy Guard --> <string name="privacy_guard_manager_title">Zaščita zasebnosti</string> <!-- Permissions used by remote preferences --> diff --git a/lineage/res/res/values-sq-rAL/strings.xml b/lineage/res/res/values-sq-rAL/strings.xml index 06121cd9..64524040 100644 --- a/lineage/res/res/values-sq-rAL/strings.xml +++ b/lineage/res/res/values-sq-rAL/strings.xml @@ -100,20 +100,12 @@ <string name="permlab_thirdPartyKeyguard">ekran bllokues i mundësuar nga një palë e tretë</string> <!-- Third party keyguard permission description --> <string name="permdesc_thirdPartyKeyguard">Lejon një aplikacion që të përdoret si një ekran bllokues i pasigurtë.</string> - <!-- Theme installation error notification --> - <string name="theme_install_error_title">Instalimi i temës dështoi</string> - <string name="theme_install_error_message"><xliff:g id="theme">%1$s</xliff:g> nuk u instalua</string> - <!-- Theme reset notification --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_accessThemeService">akseso shërbimin e temave</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_readThemes">lexo informacionet e temës</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_writeThemes">modifiko temat e tua</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_writeThemesDesc">Lejon aplikacionin të instalojë tema të reja dhe të modifikojë temën që ke aplikuar.</string> <!-- Performance manager permission title --> <!-- Performance manager permission description --> <!-- Access live lock screen manager service permission label --> @@ -135,9 +127,6 @@ <string name="permdesc_manageLiveDisplay">Lejon një aplikacion të konfigurojë parametra të përparuar të ekranit.</string> <!-- LineageAudioService - observe session changes permission --> <!-- LineageAudioService - observe session changes permission --> - <!-- QuickSettings: Themes tile --> - <string name="qs_themes_label">Temat</string> - <string name="qs_themes_content_description">Personalizo temën</string> <!-- Privacy Guard --> <string name="privacy_guard_manager_title">Mbrojtësi i të Dhënave</string> <!-- Permissions used by remote preferences --> diff --git a/lineage/res/res/values-sr-rCS/strings.xml b/lineage/res/res/values-sr-rCS/strings.xml index ec4d0c1a..a2da064c 100644 --- a/lineage/res/res/values-sr-rCS/strings.xml +++ b/lineage/res/res/values-sr-rCS/strings.xml @@ -40,8 +40,6 @@ <!-- LiveDisplay strings --> <!-- Third party keyguard permission label --> <!-- Third party keyguard permission description --> - <!-- Theme installation error notification --> - <!-- Theme reset notification --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> @@ -64,7 +62,6 @@ <!-- LiveDisplay manager permission --> <!-- LineageAudioService - observe session changes permission --> <!-- LineageAudioService - observe session changes permission --> - <!-- QuickSettings: Themes tile --> <!-- Privacy Guard --> <!-- Permissions used by remote preferences --> </resources> diff --git a/lineage/res/res/values-sr/strings.xml b/lineage/res/res/values-sr/strings.xml index ec37aa19..cc0557d8 100644 --- a/lineage/res/res/values-sr/strings.xml +++ b/lineage/res/res/values-sr/strings.xml @@ -119,24 +119,12 @@ <string name="permlab_thirdPartyKeyguard">закључани екран треће стране</string> <!-- Third party keyguard permission description --> <string name="permdesc_thirdPartyKeyguard">Апликација може да функционише као небезбедан закључани екран.</string> - <!-- Theme installation error notification --> - <string name="theme_install_error_title">Грешка при инсталирању теме</string> - <string name="theme_install_error_message">Не могу да инсталирам „<xliff:g id="theme">%1$s</xliff:g>“.</string> - <!-- Theme reset notification --> - <string name="theme_reset_notification_title">Враћање првобитне теме</string> - <string name="theme_reset_notification_message">Враћена је стандардна тема због отказивања апликација.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_accessThemeService">приступ услузи тема</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_accessThemeService">Апликација може да приступа услузи тема. Ова дозвола није потребна нормалним апликацијама.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_readThemes">читање података о теми</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_readThemesDesc">Апликација може да чита теме и одреди која је тренутно активна.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_writeThemes">мењање тема</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_writeThemesDesc">Апликација може да инсталира нове теме и да промени тренутну.</string> <!-- Performance manager permission title --> <string name="permlab_perfAccess">приступ менаџеру перформанси</string> <!-- Performance manager permission description --> @@ -179,9 +167,6 @@ <!-- LineageAudioService - observe session changes permission --> <string name="permlab_manage_audio_sessions">управљање изменама звучних сесија</string> <string name="permdesc_manage_audio_sessions">Апликација може да мења параметре звучних токова.</string> - <!-- QuickSettings: Themes tile --> - <string name="qs_themes_label">Теме</string> - <string name="qs_themes_content_description">Прилагодите своју тему.</string> <!-- Privacy Guard --> <string name="privacy_guard_manager_title">Заштита приватности</string> <!-- Permissions used by remote preferences --> diff --git a/lineage/res/res/values-sv/strings.xml b/lineage/res/res/values-sv/strings.xml index 0e50e5a7..15dd5dae 100644 --- a/lineage/res/res/values-sv/strings.xml +++ b/lineage/res/res/values-sv/strings.xml @@ -108,24 +108,12 @@ <string name="permlab_thirdPartyKeyguard">tredjepartslåsskärm</string> <!-- Third party keyguard permission description --> <string name="permdesc_thirdPartyKeyguard">Tillåter en applikation att användas som osäker låsskärm.</string> - <!-- Theme installation error notification --> - <string name="theme_install_error_title">Kunde inte installera tema</string> - <string name="theme_install_error_message"><xliff:g id="theme">%1$s</xliff:g> kunde inte installeras</string> - <!-- Theme reset notification --> - <string name="theme_reset_notification_title">Återställning av tema</string> - <string name="theme_reset_notification_message">Systemtemat kommer återställas på grund av att appen kraschat flera gånger.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_accessThemeService">få tillgång till tematjänst</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_accessThemeService">Tillåter en app att få tillgång till tematjänsten. Ska aldrig behövas för vanliga appar.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_readThemes">läsa information om ditt tema</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_readThemesDesc">Tillåter att appen läser dina teman och avgör vilket tema du har använt.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_writeThemes">modifiera dina teman</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_writeThemesDesc">Tillåter att appen infogar nya teman och ändrar vilket tema du har använt.</string> <!-- Performance manager permission title --> <string name="permlab_perfAccess">komma åt prestandahanteraren</string> <!-- Performance manager permission description --> @@ -145,8 +133,6 @@ <!-- LiveDisplay manager permission --> <!-- LineageAudioService - observe session changes permission --> <!-- LineageAudioService - observe session changes permission --> - <!-- QuickSettings: Themes tile --> - <string name="qs_themes_label">Teman</string> <!-- Privacy Guard --> <!-- Permissions used by remote preferences --> </resources> diff --git a/lineage/res/res/values-sw/strings.xml b/lineage/res/res/values-sw/strings.xml index ec4d0c1a..a2da064c 100644 --- a/lineage/res/res/values-sw/strings.xml +++ b/lineage/res/res/values-sw/strings.xml @@ -40,8 +40,6 @@ <!-- LiveDisplay strings --> <!-- Third party keyguard permission label --> <!-- Third party keyguard permission description --> - <!-- Theme installation error notification --> - <!-- Theme reset notification --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> @@ -64,7 +62,6 @@ <!-- LiveDisplay manager permission --> <!-- LineageAudioService - observe session changes permission --> <!-- LineageAudioService - observe session changes permission --> - <!-- QuickSettings: Themes tile --> <!-- Privacy Guard --> <!-- Permissions used by remote preferences --> </resources> diff --git a/lineage/res/res/values-ta-rIN/strings.xml b/lineage/res/res/values-ta-rIN/strings.xml index 367b0a0a..f070503c 100644 --- a/lineage/res/res/values-ta-rIN/strings.xml +++ b/lineage/res/res/values-ta-rIN/strings.xml @@ -104,8 +104,6 @@ <string name="permlab_thirdPartyKeyguard">மூன்றாம் தரப்பு பூட்டுத் திரை</string> <!-- Third party keyguard permission description --> <string name="permdesc_thirdPartyKeyguard">பாதுகாப்பற்ற பூட்டுத் திரையாக பயன்படுத்தப்பட ஒரு பயன்பாட்டை அனுமதிக்கிறது.</string> - <!-- Theme installation error notification --> - <!-- Theme reset notification --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> @@ -128,7 +126,6 @@ <!-- LiveDisplay manager permission --> <!-- LineageAudioService - observe session changes permission --> <!-- LineageAudioService - observe session changes permission --> - <!-- QuickSettings: Themes tile --> <!-- Privacy Guard --> <!-- Permissions used by remote preferences --> </resources> diff --git a/lineage/res/res/values-te-rIN/strings.xml b/lineage/res/res/values-te-rIN/strings.xml index d0830bba..798e5f5f 100644 --- a/lineage/res/res/values-te-rIN/strings.xml +++ b/lineage/res/res/values-te-rIN/strings.xml @@ -104,8 +104,6 @@ <string name="permlab_thirdPartyKeyguard">మూడవ పక్షం లాక్ స్క్రీన్</string> <!-- Third party keyguard permission description --> <string name="permdesc_thirdPartyKeyguard">ఒక ప్రోగ్రాం అసురక్షిత లాక్ స్క్రీనుగా ఉపయోగించబడడానికి అనుమతినిస్తుంది.</string> - <!-- Theme installation error notification --> - <!-- Theme reset notification --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> @@ -128,7 +126,6 @@ <!-- LiveDisplay manager permission --> <!-- LineageAudioService - observe session changes permission --> <!-- LineageAudioService - observe session changes permission --> - <!-- QuickSettings: Themes tile --> <!-- Privacy Guard --> <!-- Permissions used by remote preferences --> </resources> diff --git a/lineage/res/res/values-th/strings.xml b/lineage/res/res/values-th/strings.xml index 9d442b23..93c97e2b 100644 --- a/lineage/res/res/values-th/strings.xml +++ b/lineage/res/res/values-th/strings.xml @@ -114,24 +114,12 @@ <string name="permlab_thirdPartyKeyguard">หน้าจอล็อคบุคคลที่สาม</string> <!-- Third party keyguard permission description --> <string name="permdesc_thirdPartyKeyguard">อนุญาตให้ใช้แอปเป็นหน้าจอล็อคแบบไม่ปลอดภัย</string> - <!-- Theme installation error notification --> - <string name="theme_install_error_title">การติดตั้งรูปแบบธีมล้มเหลว</string> - <string name="theme_install_error_message"><xliff:g id="theme">%1$s</xliff:g> ล้มเหลวในการติดตั้ง</string> - <!-- Theme reset notification --> - <string name="theme_reset_notification_title">รีเซ็ตรูปแบบธีม</string> - <string name="theme_reset_notification_message">ระบบกลับมาใช้รูปแบบธีมเดิมเนื่องจากมีหลายปัญหาที่เกิดกับแอป</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_accessThemeService">เข้าถึงรูปแบบธีม</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_accessThemeService">อนุญาตให้แอปเข้าถึงรูปแบบธีมได้ ซึ่งถือว่าไม่จำเป็นในแอปปกติ</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_readThemes">อ่านข้อมูลรูปแบบธีมของคุณ</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_readThemesDesc">อนุญาตให้แอปอ่านข้อมูลรูปแบบธีมและ กำหนดหาว่ารูปแบบธีมใดที่คุณใช้</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_writeThemes">แก้ไขรูปแบบธีมของคุณ</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_writeThemesDesc">อณุญาตให้แอปเพิ่มรูปแบบธีมใหม่และแก้ไขรูปแบบธีมที่คุณใช้</string> <!-- Performance manager permission title --> <string name="permlab_perfAccess">ตัวจัดการประสิทธิภาพการเข้าถึง</string> <!-- Performance manager permission description --> @@ -172,9 +160,6 @@ <string name="permlab_observe_audio_sessions">สังเกตการเปลี่ยนแปลงเซสชันเสียง</string> <string name="permdesc_observe_audio_sessions">อนุญาตให้แอปสังเกตกระแสข้อมูลเสียงที่กำลังถูกสร้างและทำลาย</string> <!-- LineageAudioService - observe session changes permission --> - <!-- QuickSettings: Themes tile --> - <string name="qs_themes_label">รูปแบบธีม</string> - <string name="qs_themes_content_description">กำหนดรูปแบบธีมเอง</string> <!-- Privacy Guard --> <!-- Permissions used by remote preferences --> </resources> diff --git a/lineage/res/res/values-tr/strings.xml b/lineage/res/res/values-tr/strings.xml index dd8464ee..2bbe15e6 100644 --- a/lineage/res/res/values-tr/strings.xml +++ b/lineage/res/res/values-tr/strings.xml @@ -119,26 +119,12 @@ <string name="permlab_thirdPartyKeyguard">üçüncü taraf kilit ekranı</string> <!-- Third party keyguard permission description --> <string name="permdesc_thirdPartyKeyguard">Uygulamalara şifresiz kilit ekranı olarak kullanılabilme izni verir.</string> - <!-- Theme installation error notification --> - <string name="theme_install_error_title">Tema yüklenemedi</string> - <string name="theme_install_error_message"><xliff:g id="theme">%1$s </xliff:g> yüklenemedi</string> - <!-- Theme reset notification --> - <string name="theme_reset_notification_title">Tema sıfırlandı</string> - <string name="theme_reset_notification_message">Uygulama çökmelerinden dolayı sistem temasına geri dönüldü.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_accessThemeService">tema hizmetine erişim</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_accessThemeService">Bir uygulamanın tema hizmetine erişimine izin verir. Normal uygulamalar için gerekli değildir.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_readThemes">tema bilginizi okuyun</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_readThemesDesc">Uygulamanın temalarınızı okumasına ve hangi -temayı uyguladığınızı belirlemesine izin verir.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_writeThemes">temalarınızı değiştirin</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_writeThemesDesc">Uygulamanın yeni temalar eklemesine ve -uyguladığınız temayı değiştirmesine izin verir.</string> <!-- Performance manager permission title --> <string name="permlab_perfAccess">performans yöneticisine erişim</string> <!-- Performance manager permission description --> @@ -181,9 +167,6 @@ uyguladığınız temayı değiştirmesine izin verir.</string> <!-- LineageAudioService - observe session changes permission --> <string name="permlab_manage_audio_sessions">sesli oturum değişikliklerini yönet</string> <string name="permdesc_manage_audio_sessions">Bir uygulamaya ses akış güncellemeleri gönderme izni verir.</string> - <!-- QuickSettings: Themes tile --> - <string name="qs_themes_label">Temalar</string> - <string name="qs_themes_content_description">Temanızı özelleştirin</string> <!-- Privacy Guard --> <string name="privacy_guard_manager_title">Gizlilik Koruması</string> <!-- Permissions used by remote preferences --> diff --git a/lineage/res/res/values-ug/strings.xml b/lineage/res/res/values-ug/strings.xml index aa10950e..37b5e325 100644 --- a/lineage/res/res/values-ug/strings.xml +++ b/lineage/res/res/values-ug/strings.xml @@ -104,24 +104,12 @@ <string name="permlab_thirdPartyKeyguard">ئۈچىنچى تەرەپ ئېكران قۇلۇپى</string> <!-- Third party keyguard permission description --> <string name="permdesc_thirdPartyKeyguard">ئەپنىڭ تۇراقسىز ئىكران قۇلۇپى بۇلۇپ ئىشلىتىلىشىگە رۇخسەت قىلىش.</string> - <!-- Theme installation error notification --> - <string name="theme_install_error_title">ئۆرنەك ئورنىتالمىدى</string> - <string name="theme_install_error_message"><xliff:g id="theme">%1$s</xliff:g> ئورنىتىش مەغلۇب بولدى</string> - <!-- Theme reset notification --> - <string name="theme_reset_notification_title">باش تېمىنى قايتا بېكىتىش</string> - <string name="theme_reset_notification_message">كۆپلىگەن ئەپ ۋەيران بولغانلىقى ئۈچۈن باش تېما ئەسلىگە قايتتى.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_accessThemeService">باش تېما مۇلازىمىتىگە كىرىش</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_accessThemeService">بىر ئەپنىڭ باش تېما مۇلازىمىتىگە كىرىشىگە رۇخسەت قىلىش. نورمال ئەپ بۇنداق ھوقۇققا ھەرگىز ئېھتىياجلىق ئەمەس.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_readThemes">باش تېما ئۇچۇرىڭىزنى ئوقۇڭ</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_readThemesDesc">ئەپنىڭ سىزنىڭ باش تېمىڭىزنى ئوقۇشقا ۋە سىزنىڭ قايسى باش تېمىنى ئىشلەتكىڭىزنى جەزىملەشتۈرۈشكە رۇخسەت قىلىڭ.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_writeThemes">باش تېمىڭىزنى ئۆزگەرتىڭ</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_writeThemesDesc">ئەپنىڭ يېڭى باش تېما قوشۇشىغا ۋە سىزنىڭ قايسى باش تېمىنى ئىشلەتكىڭىزنى جەزىملەشتۈرۈشكە رۇخسەت قىلىڭ.</string> <!-- Performance manager permission title --> <string name="permlab_perfAccess">ئىقتىدار باشقۇرغۇچنى زىيارەت قىلىش</string> <!-- Performance manager permission description --> @@ -140,7 +128,6 @@ <!-- LiveDisplay manager permission --> <!-- LineageAudioService - observe session changes permission --> <!-- LineageAudioService - observe session changes permission --> - <!-- QuickSettings: Themes tile --> <!-- Privacy Guard --> <!-- Permissions used by remote preferences --> </resources> diff --git a/lineage/res/res/values-uk/strings.xml b/lineage/res/res/values-uk/strings.xml index c903d844..1d522dc6 100644 --- a/lineage/res/res/values-uk/strings.xml +++ b/lineage/res/res/values-uk/strings.xml @@ -119,25 +119,12 @@ <string name="permlab_thirdPartyKeyguard">Нетиповий екран блокування</string> <!-- Third party keyguard permission description --> <string name="permdesc_thirdPartyKeyguard">Дозволяє використати програму як незахищене блокування екрану.</string> - <!-- Theme installation error notification --> - <string name="theme_install_error_title">Не вдалося встановити тему</string> - <string name="theme_install_error_message"><xliff:g id="theme">%1$s </xliff:g> не вдалося встановити</string> - <!-- Theme reset notification --> - <string name="theme_reset_notification_title">Скинути тему</string> - <string name="theme_reset_notification_message">Через збої в роботі додатків встановлено системну тему.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_accessThemeService">доступ до служби тем</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_accessThemeService">Дозволяє додатку отримувати доступ до служби тем. Цей дозвіл не використовується звичайними додатками.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_readThemes">читати дані вашої теми</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_readThemesDesc">Дозволяє додатку читати дані про теми і -виявляти, яку тему зараз застосовано.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_writeThemes">змінювати теми</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_writeThemesDesc">Дозволяє додатку встановлювати нові теми і змінювати поточну.</string> <!-- Performance manager permission title --> <string name="permlab_perfAccess">доступ до менеджера продуктивності</string> <!-- Performance manager permission description --> @@ -180,9 +167,6 @@ <!-- LineageAudioService - observe session changes permission --> <string name="permlab_manage_audio_sessions">керувати змінами аудіо сесії</string> <string name="permdesc_manage_audio_sessions">Дозволяє додатку змінювати параметри аудіопотоків.</string> - <!-- QuickSettings: Themes tile --> - <string name="qs_themes_label">Теми</string> - <string name="qs_themes_content_description">Налаштувати вашу тему</string> <!-- Privacy Guard --> <string name="privacy_guard_manager_title">Вартовий Приватності</string> <!-- Permissions used by remote preferences --> diff --git a/lineage/res/res/values-ur-rPK/strings.xml b/lineage/res/res/values-ur-rPK/strings.xml index ec4d0c1a..a2da064c 100644 --- a/lineage/res/res/values-ur-rPK/strings.xml +++ b/lineage/res/res/values-ur-rPK/strings.xml @@ -40,8 +40,6 @@ <!-- LiveDisplay strings --> <!-- Third party keyguard permission label --> <!-- Third party keyguard permission description --> - <!-- Theme installation error notification --> - <!-- Theme reset notification --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> @@ -64,7 +62,6 @@ <!-- LiveDisplay manager permission --> <!-- LineageAudioService - observe session changes permission --> <!-- LineageAudioService - observe session changes permission --> - <!-- QuickSettings: Themes tile --> <!-- Privacy Guard --> <!-- Permissions used by remote preferences --> </resources> diff --git a/lineage/res/res/values-uz-rUZ/strings.xml b/lineage/res/res/values-uz-rUZ/strings.xml index ec4d0c1a..a2da064c 100644 --- a/lineage/res/res/values-uz-rUZ/strings.xml +++ b/lineage/res/res/values-uz-rUZ/strings.xml @@ -40,8 +40,6 @@ <!-- LiveDisplay strings --> <!-- Third party keyguard permission label --> <!-- Third party keyguard permission description --> - <!-- Theme installation error notification --> - <!-- Theme reset notification --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> @@ -64,7 +62,6 @@ <!-- LiveDisplay manager permission --> <!-- LineageAudioService - observe session changes permission --> <!-- LineageAudioService - observe session changes permission --> - <!-- QuickSettings: Themes tile --> <!-- Privacy Guard --> <!-- Permissions used by remote preferences --> </resources> diff --git a/lineage/res/res/values-vi/strings.xml b/lineage/res/res/values-vi/strings.xml index ef798234..3d0e740c 100644 --- a/lineage/res/res/values-vi/strings.xml +++ b/lineage/res/res/values-vi/strings.xml @@ -119,24 +119,12 @@ <string name="permlab_thirdPartyKeyguard">màn hình khoá bên thứ ba</string> <!-- Third party keyguard permission description --> <string name="permdesc_thirdPartyKeyguard">Cho phép ứng dụng được dùng làm màn hình khoá không an toàn.</string> - <!-- Theme installation error notification --> - <string name="theme_install_error_title">Không thể cài đặt chủ đề</string> - <string name="theme_install_error_message"><xliff:g id="theme">%1$s </xliff:g> không thể cài đặt</string> - <!-- Theme reset notification --> - <string name="theme_reset_notification_title">Đặt lại chủ đề</string> - <string name="theme_reset_notification_message">Đã khôi phục chủ đề hệ thống vì nhiều ứng dụng bị lỗi.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_accessThemeService">truy cập dịch vụ chủ đề</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_accessThemeService">Cho phép ứng dụng truy cập dịch vụ chủ đề. Ứng dụng bình thường không bao giờ cần quyền này.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_readThemes">đọc thông tin chủ đề của bạn</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_readThemesDesc">Cho phép ứng dụng đọc và xác định chủ đề bạn đã áp dụng.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_writeThemes">sửa đổi chủ đề của bạn</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_writeThemesDesc">Cho phép ứng dụng chèn các chủ đề mới và sửa đổi chủ đề bạn đã áp dụng.</string> <!-- Performance manager permission title --> <string name="permlab_perfAccess">truy cập trình quản lý hiệu quả hoạt động</string> <!-- Performance manager permission description --> @@ -179,9 +167,6 @@ <!-- LineageAudioService - observe session changes permission --> <string name="permlab_manage_audio_sessions">quản lý thay đổi âm thanh phiên</string> <string name="permdesc_manage_audio_sessions">Cho phép một ứng dụng gửi thông tin các cập nhật stream âm thanh.</string> - <!-- QuickSettings: Themes tile --> - <string name="qs_themes_label">Chủ đề</string> - <string name="qs_themes_content_description">Tùy chỉnh chủ đề của bạn</string> <!-- Privacy Guard --> <string name="privacy_guard_manager_title">Bảo vệ quyền riêng tư</string> <!-- Permissions used by remote preferences --> diff --git a/lineage/res/res/values-zh-rCN/strings.xml b/lineage/res/res/values-zh-rCN/strings.xml index 4c614c6e..4bbc0721 100644 --- a/lineage/res/res/values-zh-rCN/strings.xml +++ b/lineage/res/res/values-zh-rCN/strings.xml @@ -119,24 +119,12 @@ <string name="permlab_thirdPartyKeyguard">第三方锁屏</string> <!-- Third party keyguard permission description --> <string name="permdesc_thirdPartyKeyguard">允许应用用作不安全锁屏。</string> - <!-- Theme installation error notification --> - <string name="theme_install_error_title">安装主题失败</string> - <string name="theme_install_error_message"><xliff:g id="theme">%1$s</xliff:g> 安装失败</string> - <!-- Theme reset notification --> - <string name="theme_reset_notification_title">重置主题</string> - <string name="theme_reset_notification_message">由于多个应用崩溃,已还原至系统主题。</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_accessThemeService">访问主题服务</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_accessThemeService">允许应用访问主题服务。正常应用不应需要此权限。</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_readThemes">读取您的主题信息</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_readThemesDesc">允许应用读取您的主题和确认您已应用的主题。</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_writeThemes">修改您的主题</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_writeThemesDesc">允许应用插入新的主题和修改您已应用的主题。</string> <!-- Performance manager permission title --> <string name="permlab_perfAccess">访问性能管理器</string> <!-- Performance manager permission description --> @@ -179,9 +167,6 @@ <!-- LineageAudioService - observe session changes permission --> <string name="permlab_manage_audio_sessions">管理音频会话变动</string> <string name="permdesc_manage_audio_sessions">允许应用发送音频流更新。</string> - <!-- QuickSettings: Themes tile --> - <string name="qs_themes_label">主题</string> - <string name="qs_themes_content_description">自定义您的主题</string> <!-- Privacy Guard --> <string name="privacy_guard_manager_title">隐私防护</string> <!-- Permissions used by remote preferences --> diff --git a/lineage/res/res/values-zh-rHK/strings.xml b/lineage/res/res/values-zh-rHK/strings.xml index 628ae978..66a123f5 100644 --- a/lineage/res/res/values-zh-rHK/strings.xml +++ b/lineage/res/res/values-zh-rHK/strings.xml @@ -44,8 +44,6 @@ <!-- LiveDisplay strings --> <!-- Third party keyguard permission label --> <!-- Third party keyguard permission description --> - <!-- Theme installation error notification --> - <!-- Theme reset notification --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> @@ -68,7 +66,6 @@ <!-- LiveDisplay manager permission --> <!-- LineageAudioService - observe session changes permission --> <!-- LineageAudioService - observe session changes permission --> - <!-- QuickSettings: Themes tile --> <!-- Privacy Guard --> <!-- Permissions used by remote preferences --> </resources> diff --git a/lineage/res/res/values-zh-rTW/strings.xml b/lineage/res/res/values-zh-rTW/strings.xml index 01888939..ee9ddcca 100644 --- a/lineage/res/res/values-zh-rTW/strings.xml +++ b/lineage/res/res/values-zh-rTW/strings.xml @@ -119,25 +119,12 @@ <string name="permlab_thirdPartyKeyguard">第三方鎖定畫面</string> <!-- Third party keyguard permission description --> <string name="permdesc_thirdPartyKeyguard">允許應用程式用作不安全的鎖定畫面。</string> - <!-- Theme installation error notification --> - <string name="theme_install_error_title">主題安裝失敗</string> - <string name="theme_install_error_message"><xliff:g id="theme">%1$s </xliff:g> 安裝失敗</string> - <!-- Theme reset notification --> - <string name="theme_reset_notification_title">重設主題</string> - <string name="theme_reset_notification_message">根據多個應用程式發生錯誤所以已還原至預設主題</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_accessThemeService">存取主題服務</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_accessThemeService">允許應用程式存取主題服務 。一般應用程式不需使用。</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_readThemes">閱讀您的主題資訊</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_readThemesDesc">允許應用程式讀取您的主題, - 並確定您已套用哪個的主題。</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_writeThemes">修改您的主題</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_writeThemesDesc">允許應用程式來插入新的主題和修改您已應用的主題。</string> <!-- Performance manager permission title --> <string name="permlab_perfAccess">存取效能管理員</string> <!-- Performance manager permission description --> @@ -180,9 +167,6 @@ <!-- LineageAudioService - observe session changes permission --> <string name="permlab_manage_audio_sessions">管理音訊會話變動</string> <string name="permdesc_manage_audio_sessions">允許應用程式傳送音訊串流更新。</string> - <!-- QuickSettings: Themes tile --> - <string name="qs_themes_label">主題</string> - <string name="qs_themes_content_description">自訂您的主題</string> <!-- Privacy Guard --> <string name="privacy_guard_manager_title">隱私守衛</string> <!-- Permissions used by remote preferences --> diff --git a/lineage/res/res/values-zu/strings.xml b/lineage/res/res/values-zu/strings.xml index ec4d0c1a..a2da064c 100644 --- a/lineage/res/res/values-zu/strings.xml +++ b/lineage/res/res/values-zu/strings.xml @@ -40,8 +40,6 @@ <!-- LiveDisplay strings --> <!-- Third party keyguard permission label --> <!-- Third party keyguard permission description --> - <!-- Theme installation error notification --> - <!-- Theme reset notification --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> @@ -64,7 +62,6 @@ <!-- LiveDisplay manager permission --> <!-- LineageAudioService - observe session changes permission --> <!-- LineageAudioService - observe session changes permission --> - <!-- QuickSettings: Themes tile --> <!-- Privacy Guard --> <!-- Permissions used by remote preferences --> </resources> diff --git a/lineage/res/res/values/strings.xml b/lineage/res/res/values/strings.xml index b3304f47..8adfec3f 100644 --- a/lineage/res/res/values/strings.xml +++ b/lineage/res/res/values/strings.xml @@ -146,29 +146,16 @@ <!-- Third party keyguard permission description --> <string name="permdesc_thirdPartyKeyguard">Allows an app to be used as an insecure lock screen.</string> - <!-- Theme installation error notification --> - <string name="theme_install_error_title">Failed to install theme</string> - <string name="theme_install_error_message"><xliff:g id="theme">%1$s</xliff:g> failed to install</string> - <!-- Theme reset notification --> - <string name="theme_reset_notification_title">Theme reset</string> - <string name="theme_reset_notification_message">System theme restored due to multiple app crashes.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_accessThemeService">access theme service</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_accessThemeService">Allows an app to access the theme service. Should never be needed for normal apps.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_readThemes">read your theme info</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_readThemesDesc">Allows the app to read your themes and - determine which theme you have applied.</string> <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permlab_writeThemes">modify your themes</string> <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. --> - <string name="permdesc_writeThemesDesc">Allows the app to insert new themes and modify which theme you have applied.</string> <!-- Performance manager permission title --> <string name="permlab_perfAccess">access performance manager</string> @@ -220,9 +207,6 @@ <string name="permlab_manage_audio_sessions">manage audio session changes</string> <string name="permdesc_manage_audio_sessions">Allows an app to send audio stream updates.</string> - <!-- QuickSettings: Themes tile --> - <string name="qs_themes_label">Themes</string> - <string name="qs_themes_content_description">Customize your theme</string> <!-- Privacy Guard --> <string name="privacy_guard_manager_title">Privacy Guard</string> diff --git a/lineage/res/res/values/symbols.xml b/lineage/res/res/values/symbols.xml index cd13a524..417818f5 100644 --- a/lineage/res/res/values/symbols.xml +++ b/lineage/res/res/values/symbols.xml @@ -103,22 +103,9 @@ <java-symbol type="string" name="config_wifiDirectName" /> <java-symbol type="bool" name="config_wifiHotspotSecurityNone" /> - <!-- Theme install failure notification --> - <java-symbol type="string" name="theme_install_error_title" /> - <java-symbol type="string" name="theme_install_error_message" /> - - <!-- Theme reset notification --> - <java-symbol type="string" name="theme_reset_notification_title" /> - <java-symbol type="string" name="theme_reset_notification_message" /> - <!-- External Lineage specific core services --> <java-symbol type="array" name="config_externalLineageServices" /> - <!-- Themes tile --> - <java-symbol type="string" name="qs_themes_label" /> - <java-symbol type="string" name="qs_themes_content_description" /> - <java-symbol type="drawable" name="ic_qs_themes" /> - <!-- Lineage system server --> <java-symbol type="string" name="config_externalSystemServer" /> diff --git a/packages/LineageSettingsProvider/res/values/defaults.xml b/packages/LineageSettingsProvider/res/values/defaults.xml index f9eebf9c..59b40065 100644 --- a/packages/LineageSettingsProvider/res/values/defaults.xml +++ b/packages/LineageSettingsProvider/res/values/defaults.xml @@ -31,12 +31,6 @@ <!-- Default for LineageSettings.Secure.ADVANCED_MODE --> <bool name="def_advanced_mode">true</bool> - <!-- Default for LineageSettings.Secure.DEFAULT_THEME_COMPONENTS --> - <string name="def_theme_components"></string> - - <!-- Default for LineageSettings.Secure.DEFAULT_THEME_PACKAGE --> - <string name="def_theme_package"></string> - <!-- Defaults for LineageSettings.Secure.DEV_FORCE_SHOW_NAVBAR --> <integer name="def_force_show_navbar">0</integer> diff --git a/packages/LineageSettingsProvider/src/org/lineageos/lineagesettings/LineageDatabaseHelper.java b/packages/LineageSettingsProvider/src/org/lineageos/lineagesettings/LineageDatabaseHelper.java index 52d5a5fb..09d9defa 100644 --- a/packages/LineageSettingsProvider/src/org/lineageos/lineagesettings/LineageDatabaseHelper.java +++ b/packages/LineageSettingsProvider/src/org/lineageos/lineagesettings/LineageDatabaseHelper.java @@ -365,12 +365,6 @@ public class LineageDatabaseHelper extends SQLiteOpenHelper{ loadBooleanSetting(stmt, LineageSettings.Secure.ADVANCED_MODE, R.bool.def_advanced_mode); - loadRegionLockedStringSetting(stmt, - LineageSettings.Secure.DEFAULT_THEME_COMPONENTS, R.string.def_theme_components); - - loadRegionLockedStringSetting(stmt, - LineageSettings.Secure.DEFAULT_THEME_PACKAGE, R.string.def_theme_package); - loadIntegerSetting(stmt, LineageSettings.Secure.DEV_FORCE_SHOW_NAVBAR, R.integer.def_force_show_navbar); diff --git a/packages/LineageSettingsProvider/tests/src/org/lineageos/lineagesettings/tests/LineageSettingsProviderDefaultsTest.java b/packages/LineageSettingsProvider/tests/src/org/lineageos/lineagesettings/tests/LineageSettingsProviderDefaultsTest.java index ddb9c946..702a92d7 100644 --- a/packages/LineageSettingsProvider/tests/src/org/lineageos/lineagesettings/tests/LineageSettingsProviderDefaultsTest.java +++ b/packages/LineageSettingsProvider/tests/src/org/lineageos/lineagesettings/tests/LineageSettingsProviderDefaultsTest.java @@ -99,12 +99,6 @@ public class LineageSettingsProviderDefaultsTest extends AndroidTestCase { LineageSettings.Secure.LOCKSCREEN_VISUALIZER_ENABLED, "R.bool.def_lockscreen_visualizer")); SECURE_SETTINGS_DEFAULTS.add(new Setting( - LineageSettings.Secure.DEFAULT_THEME_COMPONENTS, - "R.string.def_theme_components")); - SECURE_SETTINGS_DEFAULTS.add(new Setting( - LineageSettings.Secure.DEFAULT_THEME_PACKAGE, - "R.string.def_theme_package")); - SECURE_SETTINGS_DEFAULTS.add(new Setting( LineageSettings.Secure.PROTECTED_COMPONENT_MANAGERS, "R.string.def_protected_component_managers")); } diff --git a/sdk/src/java/lineageos/app/LineageContextConstants.java b/sdk/src/java/lineageos/app/LineageContextConstants.java index e5c0df17..69f033ad 100644 --- a/sdk/src/java/lineageos/app/LineageContextConstants.java +++ b/sdk/src/java/lineageos/app/LineageContextConstants.java @@ -101,13 +101,6 @@ public final class LineageContextConstants { public static final String LINEAGE_PERFORMANCE_SERVICE = "lineageperformance"; /** - * Controls changing and applying themes - * - * @hide - */ - public static final String LINEAGE_THEME_SERVICE = "lineagethemes"; - - /** * Manages composed icons * * @hide @@ -192,14 +185,6 @@ public final class LineageContextConstants { /** * Feature for {@link PackageManager#getSystemAvailableFeatures} and - * {@link PackageManager#hasSystemFeature}: The device includes the lineage theme service - * utilized by the lineage sdk. - */ - @SdkConstant(SdkConstant.SdkConstantType.FEATURE) - public static final String THEMES = "org.lineageos.theme"; - - /** - * Feature for {@link PackageManager#getSystemAvailableFeatures} and * {@link PackageManager#hasSystemFeature}: The device includes the lineage performance service * utilized by the lineage sdk. */ diff --git a/sdk/src/java/lineageos/app/ThemeComponent.java b/sdk/src/java/lineageos/app/ThemeComponent.java deleted file mode 100644 index cc7d2f0e..00000000 --- a/sdk/src/java/lineageos/app/ThemeComponent.java +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Copyright (C) 2015 The CyanogenMod Project - * - * 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. - */ -package lineageos.app; - -/** - * The id value here matches the framework. Unknown is given a -1 value since future - * framework components will always be positive. - * @hide - */ -public enum ThemeComponent { - UNKNOWN(-1), - OVERLAY(0), - BOOT_ANIM(1), - WALLPAPER(2), - LOCKSCREEN(3), - FONT(4), - ICON(5), - SOUND(6); - - public int id; - ThemeComponent(int id) { - this.id = id; - } - -} diff --git a/sdk/src/java/lineageos/app/ThemeVersion.java b/sdk/src/java/lineageos/app/ThemeVersion.java deleted file mode 100644 index 4dd09748..00000000 --- a/sdk/src/java/lineageos/app/ThemeVersion.java +++ /dev/null @@ -1,206 +0,0 @@ -/* - * Copyright (C) 2015 The CyanogenMod Project - * - * 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. - */ -package lineageos.app; - -import android.os.Build; - -import java.lang.reflect.Field; -import java.util.ArrayList; -import java.util.List; - -/** - * @hide - */ -public class ThemeVersion { - private static final String THEME_VERSION_CLASS_NAME = "android.content.ThemeVersion"; - private static final String THEME_VERSION_FIELD_NAME = "THEME_VERSION"; - private static final String MIN_SUPPORTED_THEME_VERSION_FIELD_NAME = - "MIN_SUPPORTED_THEME_VERSION"; - private static final int CM11 = 1; - private static final int CM12_PRE_VERSIONING = 2; - - public static int getVersion() { - int version; - try { - Class<?> themeVersionClass = Class.forName(THEME_VERSION_CLASS_NAME); - Field themeVersionField = themeVersionClass.getField(THEME_VERSION_FIELD_NAME); - version = (Integer) themeVersionField.get(null); - } catch(Exception e) { - // Field doesn't exist. Fallback to SDK level - version = Build.VERSION.SDK_INT < 21 ? CM11 : - CM12_PRE_VERSIONING; - } - return version; - } - - public static int getMinSupportedVersion() { - int getMinSupportedVersion; - try { - Class<?> themeVersionClass = Class.forName(THEME_VERSION_CLASS_NAME); - Field themeVersionField = - themeVersionClass.getField(MIN_SUPPORTED_THEME_VERSION_FIELD_NAME); - getMinSupportedVersion = (Integer) themeVersionField.get(null); - } catch(Exception e) { - // Field doesn't exist. Fallback to SDK level - getMinSupportedVersion = Build.VERSION.SDK_INT < 21 ? CM11 : - CM12_PRE_VERSIONING; - } - return getMinSupportedVersion; - } - - public static ComponentVersion getComponentVersion(ThemeComponent component) { - int version = getVersion(); - if (version == 1) { - throw new UnsupportedOperationException(); - } else if (version == 2) { - return ThemeVersionImpl2.getDeviceComponentVersion(component); - } else { - return ThemeVersionImpl3.getDeviceComponentVersion(component); - } - } - - public static List<ComponentVersion> getComponentVersions() { - int version = getVersion(); - if (version == 1) { - throw new UnsupportedOperationException(); - } else if (version == 2) { - return ThemeVersionImpl2.getDeviceComponentVersions(); - } else { - return ThemeVersionImpl3.getDeviceComponentVersions(); - } - } - - public static class ComponentVersion { - protected int id; - protected String name; - protected ThemeComponent component; - protected int minVersion; - protected int currentVersion; - - protected ComponentVersion(int id, ThemeComponent component, int targetVersion) { - this(id, component, component.name(), targetVersion, targetVersion); - } - - protected ComponentVersion(int id, - ThemeComponent component, - String name, - int minVersion, - int targetVersion) { - this.id = id; - this.component = component; - this.name = name; - this.minVersion = minVersion; - this.currentVersion = targetVersion; - } - - public ComponentVersion(ComponentVersion copy) { - this(copy.id, copy.component, copy.name, copy.minVersion, copy.currentVersion); - } - - public int getId() { - return id; - } - - public String getName() { - return name; - } - - public ThemeComponent getComponent() { - return component; - } - - public int getMinVersion() { - return minVersion; - } - - public int getCurrentVersion() { - return currentVersion; - } - } - - private static class ThemeVersionImpl2 { - private static ArrayList<ComponentVersion> cVersions = new ArrayList<ComponentVersion>() { - { - add(new ComponentVersion(0, ThemeComponent.OVERLAY, 2)); - add(new ComponentVersion(1, ThemeComponent.BOOT_ANIM, 1)); - add(new ComponentVersion(2, ThemeComponent.WALLPAPER, 1)); - add(new ComponentVersion(3, ThemeComponent.LOCKSCREEN, 1)); - add(new ComponentVersion(4, ThemeComponent.ICON, 1)); - add(new ComponentVersion(5, ThemeComponent.FONT, 1)); - add(new ComponentVersion(6, ThemeComponent.SOUND, 1)); - } - }; - - public static ComponentVersion getDeviceComponentVersion(ThemeComponent component) { - for(ComponentVersion compVersion : cVersions) { - if (compVersion.component.equals(component)) { - return new ComponentVersion(compVersion); - } - } - return null; - } - - public static List<ComponentVersion> getDeviceComponentVersions() { - ArrayList<ComponentVersion> versions = new ArrayList<ComponentVersion>(); - versions.addAll(cVersions); - return versions; - } - } - - private static class ThemeVersionImpl3 { - public static ComponentVersion getDeviceComponentVersion(ThemeComponent component) { - for(android.content.ThemeVersion.ComponentVersion version : - android.content.ThemeVersion.ComponentVersion.values()) { - ComponentVersion sdkVersionInfo = fwCompVersionToSdkVersion(version); - if (sdkVersionInfo.component.equals(component)) { - return sdkVersionInfo; - } - } - return null; - } - - public static List<ComponentVersion> getDeviceComponentVersions() { - List<ComponentVersion> versions = new ArrayList<ComponentVersion>(); - - for(android.content.ThemeVersion.ComponentVersion version : - android.content.ThemeVersion.ComponentVersion.values()) { - versions.add(fwCompVersionToSdkVersion(version)); - } - - return versions; - } - - public static ComponentVersion fwCompVersionToSdkVersion( - android.content.ThemeVersion.ComponentVersion version) { - // Find the SDK component with the matching id - // If no ID matches then the FW must have a newer component that we don't - // know anything about. We can still return the id and name - ThemeComponent component = ThemeComponent.UNKNOWN; - for(ThemeComponent aComponent : ThemeComponent.values()) { - if (aComponent.id == version.id) { - component = aComponent; - } - } - - int id = version.id; - String name = version.name(); - int minVersion = version.minSupportedVersion; - int targetVersion = version.currentVersion; - - return new ComponentVersion(id, component, name, minVersion, targetVersion); - } - } -} diff --git a/sdk/src/java/lineageos/content/Intent.java b/sdk/src/java/lineageos/content/Intent.java index fc4dbace..b245da59 100644 --- a/sdk/src/java/lineageos/content/Intent.java +++ b/sdk/src/java/lineageos/content/Intent.java @@ -96,45 +96,6 @@ public class Intent { public static final String ACTION_APP_FAILURE = "lineageos.intent.action.APP_FAILURE"; /** - * Used to indicate that a theme package has been installed or un-installed. - */ - public static final String CATEGORY_THEME_PACKAGE_INSTALLED_STATE_CHANGE = - "lineageos.intent.category.THEME_PACKAGE_INSTALL_STATE_CHANGE"; - - /** - * Action sent from the provider when a theme has been fully installed. Fully installed - * means that the apk was installed by PackageManager and the theme resources were - * processed and cached by {@link org.lineageos.platform.internal.ThemeManagerService} - * Requires the {@link lineageos.platform.Manifest.permission#READ_THEMES} permission to - * receive this broadcast. - */ - public static final String ACTION_THEME_INSTALLED = - "lineageos.intent.action.THEME_INSTALLED"; - - /** - * Action sent from the provider when a theme has been updated. - * Requires the {@link lineageos.platform.Manifest.permission#READ_THEMES} permission to - * receive this broadcast. - */ - public static final String ACTION_THEME_UPDATED = - "lineageos.intent.action.THEME_UPDATED"; - - /** - * Action sent from the provider when a theme has been removed. - * Requires the {@link lineageos.platform.Manifest.permission#READ_THEMES} permission to - * receive this broadcast. - */ - public static final String ACTION_THEME_REMOVED = - "lineageos.intent.action.THEME_REMOVED"; - - /** - * Uri scheme used to broadcast the theme's package name when broadcasting - * {@link Intent#ACTION_THEME_INSTALLED} or - * {@link Intent#ACTION_THEME_REMOVED} - */ - public static final String URI_SCHEME_PACKAGE = "package"; - - /** * Implicit action to open live lock screen settings. * @hide */ diff --git a/sdk/src/java/lineageos/providers/LineageSettings.java b/sdk/src/java/lineageos/providers/LineageSettings.java index d9f17baf..dfd7fe05 100644 --- a/sdk/src/java/lineageos/providers/LineageSettings.java +++ b/sdk/src/java/lineageos/providers/LineageSettings.java @@ -2602,24 +2602,6 @@ public final class LineageSettings { public static final String BUTTON_BRIGHTNESS = "button_brightness"; /** - * A '|' delimited list of theme components to apply from the default theme on first boot. - * Components can be one or more of the "mods_XXXXXXX" found in - * {@link ThemesContract$ThemesColumns}. Leaving this field blank assumes all components - * will be applied. - * - * ex: mods_icons|mods_overlays|mods_homescreen - * - * @hide - */ - public static final String DEFAULT_THEME_COMPONENTS = "default_theme_components"; - - /** - * Default theme to use. If empty, use holo. - * @hide - */ - public static final String DEFAULT_THEME_PACKAGE = "default_theme_package"; - - /** * Developer options - Navigation Bar show switch * @deprecated * @hide @@ -2808,17 +2790,6 @@ public final class LineageSettings { public static final String ADVANCED_REBOOT = "advanced_reboot"; /** - * This will be set to the system's current theme API version when ThemeService starts. - * It is useful for when an upgrade from one version of Lineage to another occurs. - * For example, after a user upgrades from CM11 to CM12, the value of this field - * might be 19. ThemeService would then change the value to 21. This is useful - * when an API change breaks a theme. Themeservice can identify old themes and - * unapply them from the system. - * @hide - */ - public static final String THEME_PREV_BOOT_API_LEVEL = "theme_prev_boot_api_level"; - - /** * Whether detail view for the location tile is enabled * @hide */ @@ -2950,8 +2921,6 @@ public final class LineageSettings { LineageSettings.Secure.ADVANCED_MODE, LineageSettings.Secure.BUTTON_BACKLIGHT_TIMEOUT, LineageSettings.Secure.BUTTON_BRIGHTNESS, - LineageSettings.Secure.DEFAULT_THEME_COMPONENTS, - LineageSettings.Secure.DEFAULT_THEME_PACKAGE, LineageSettings.Secure.DEV_FORCE_SHOW_NAVBAR, LineageSettings.Secure.KEYBOARD_BRIGHTNESS, LineageSettings.Secure.POWER_MENU_ACTIONS, @@ -2970,7 +2939,6 @@ public final class LineageSettings { LineageSettings.Secure.PROTECTED_COMPONENTS, LineageSettings.Secure.LIVE_DISPLAY_COLOR_MATRIX, LineageSettings.Secure.ADVANCED_REBOOT, - LineageSettings.Secure.THEME_PREV_BOOT_API_LEVEL, LineageSettings.Secure.LOCKSCREEN_TARGETS, LineageSettings.Secure.RING_HOME_BUTTON_BEHAVIOR, LineageSettings.Secure.PRIVACY_GUARD_DEFAULT, diff --git a/sdk/src/java/lineageos/providers/ThemesContract.java b/sdk/src/java/lineageos/providers/ThemesContract.java deleted file mode 100644 index a795f556..00000000 --- a/sdk/src/java/lineageos/providers/ThemesContract.java +++ /dev/null @@ -1,810 +0,0 @@ -/* - * Copyright (C) 2016 The CyanogenMod Project - * - * 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. - */ - -package lineageos.providers; - -import android.net.Uri; - -/** - * <p> - * The contract between the themes provider and applications. Contains - * definitions for the supported URIs and columns. - * </p> - */ -public class ThemesContract { - /** The authority for the themes provider */ - public static final String AUTHORITY = "org.lineageos.themes"; - /** A content:// style uri to the authority for the themes provider */ - public static final Uri AUTHORITY_URI = Uri.parse("content://" + AUTHORITY); - - public static class ThemesColumns { - public static final Uri CONTENT_URI = Uri.withAppendedPath(AUTHORITY_URI, "themes"); - - /** - * The unique ID for a row. - * <P>Type: INTEGER (long)</P> - */ - public static final String _ID = "_id"; - - /** - * The user visible title. - * <P>Type: TEXT</P> - */ - public static final String TITLE = "title"; - - /** - * Unique text to identify the apk pkg. ie "com.foo.bar" - * <P>Type: TEXT</P> - */ - public static final String PKG_NAME = "pkg_name"; - - /** - * A 32 bit RRGGBB color representative of the themes color scheme - * <P>Type: INTEGER</P> - */ - public static final String PRIMARY_COLOR = "primary_color"; - - /** - * A 2nd 32 bit RRGGBB color representative of the themes color scheme - * <P>Type: INTEGER</P> - */ - public static final String SECONDARY_COLOR = "secondary_color"; - - /** - * Name of the author of the theme - * <P>Type: TEXT</P> - */ - public static final String AUTHOR = "author"; - - /** - * The time that this row was created on its originating client (msecs - * since the epoch). - * <P>Type: INTEGER</P> - */ - public static final String DATE_CREATED = "created"; - - /** - * URI to an image that shows the homescreen with the theme applied - * since the epoch). - * <P>Type: TEXT</P> - */ - public static final String HOMESCREEN_URI = "homescreen_uri"; - - /** - * URI to an image that shows the lockscreen with theme applied - * <P>Type: TEXT</P> - */ - public static final String LOCKSCREEN_URI = "lockscreen_uri"; - - /** - * URI to an image that shows the style (aka skin) with theme applied - * <P>Type: TEXT</P> - */ - public static final String STYLE_URI = "style_uri"; - - /** - * TODO: Figure structure for actual animation instead of static - * URI to an image of the boot_anim. - * <P>Type: TEXT</P> - */ - public static final String BOOT_ANIM_URI = "bootanim_uri"; - - /** - * URI to an image of the status bar for this theme. - * <P>Type: TEXT</P> - */ - public static final String STATUSBAR_URI = "status_uri"; - - /** - * URI to an image of the fonts in this theme. - * <P>Type: TEXT</P> - */ - public static final String FONT_URI = "font_uri"; - - /** - * URI to an image of the fonts in this theme. - * <P>Type: TEXT</P> - */ - public static final String ICON_URI = "icon_uri"; - - /** - * URI to an image of the fonts in this theme. - * <P>Type: TEXT</P> - */ - public static final String OVERLAYS_URI = "overlays_uri"; - - /** - * 1 if theme modifies the launcher/homescreen else 0 - * <P>Type: INTEGER</P> - * <P>Default: 0</P> - */ - public static final String MODIFIES_LAUNCHER = "mods_homescreen"; - - /** - * 1 if theme modifies the lockscreen else 0 - * <P>Type: INTEGER</P> - * <P>Default: 0</P> - */ - public static final String MODIFIES_LOCKSCREEN = "mods_lockscreen"; - - /** - * 1 if theme modifies icons else 0 - * <P>Type: INTEGER</P> - * <P>Default: 0</P> - */ - public static final String MODIFIES_ICONS = "mods_icons"; - - /** - * 1 if theme modifies fonts - * <P>Type: INTEGER</P> - * <P>Default: 0</P> - */ - public static final String MODIFIES_FONTS = "mods_fonts"; - - /** - * 1 if theme modifies boot animation - * <P>Type: INTEGER</P> - * <P>Default: 0</P> - */ - public static final String MODIFIES_BOOT_ANIM = "mods_bootanim"; - - /** - * 1 if theme modifies notifications - * <P>Type: INTEGER</P> - * <P>Default: 0</P> - */ - public static final String MODIFIES_NOTIFICATIONS = "mods_notifications"; - - /** - * 1 if theme modifies alarm sounds - * <P>Type: INTEGER</P> - * <P>Default: 0</P> - */ - public static final String MODIFIES_ALARMS = "mods_alarms"; - - /** - * 1 if theme modifies ringtones - * <P>Type: INTEGER</P> - * <P>Default: 0</P> - */ - public static final String MODIFIES_RINGTONES = "mods_ringtones"; - - /** - * 1 if theme has overlays - * <P>Type: INTEGER</P> - * <P>Default: 0</P> - */ - public static final String MODIFIES_OVERLAYS = "mods_overlays"; - - /** - * 1 if theme has an overlay for SystemUI/StatusBar - * <P>Type: INTEGER</P> - * <P>Default: 0</P> - */ - public static final String MODIFIES_STATUS_BAR = "mods_status_bar"; - - /** - * 1 if theme has an overlay for SystemUI/NavBar - * <P>Type: INTEGER</P> - * <P>Default: 0</P> - */ - public static final String MODIFIES_NAVIGATION_BAR = "mods_navigation_bar"; - - /** - * 1 if theme has a live lock screen - * <P>Type: INTEGER</P> - * <P>Default: 0</P> - */ - public static final String MODIFIES_LIVE_LOCK_SCREEN = "mods_live_lock_screen"; - - /** - * URI to the theme's wallpaper. We should support multiple wallpaper - * but for now we will just have 1. - * <P>Type: TEXT</P> - */ - public static final String WALLPAPER_URI = "wallpaper_uri"; - - /** - * 1 if this row should actually be presented as a theme to the user. - * For example if a "theme" only modifies one component (ex icons) then - * we do not present it to the user under the themes table. - * <P>Type: INTEGER</P> - * <P>Default: 0</P> - */ - public static final String PRESENT_AS_THEME = "present_as_theme"; - - /** - * 1 if this theme is a legacy theme. - * <P>Type: INTEGER</P> - * <P>Default: 0</P> - */ - public static final String IS_LEGACY_THEME = "is_legacy_theme"; - - /** - * 1 if this theme is the system default theme. - * <P>Type: INTEGER</P> - * <P>Default: 0</P> - */ - public static final String IS_DEFAULT_THEME = "is_default_theme"; - - /** - * 1 if this theme is a legacy iconpack. A legacy icon pack is an APK that was written - * for Trebuchet or a 3rd party launcher. - * <P>Type: INTEGER</P> - * <P>Default: 0</P> - */ - public static final String IS_LEGACY_ICONPACK = "is_legacy_iconpack"; - - /** - * install/update time in millisecs. When the row is inserted this column - * is populated by the PackageInfo. It is used for syncing to PM - * <P>Type: INTEGER</P> - * <P>Default: 0</P> - */ - public static final String LAST_UPDATE_TIME = "updateTime"; - - /** - * install time in millisecs. When the row is inserted this column - * is populated by the PackageInfo. - * <P>Type: INTEGER</P> - * <P>Default: 0</P> - */ - public static final String INSTALL_TIME = "install_time"; - - /** - * The target API this theme supports - * is populated by the PackageInfo. - * <P>Type: INTEGER</P> - * <P>Default: 0</P> - */ - public static final String TARGET_API = "target_api"; - - /** - * The install state of the theme. - * Can be one of the following: - * {@link InstallState#UNKNOWN} - * {@link InstallState#INSTALLING} - * {@link InstallState#UPDATING} - * {@link InstallState#INSTALLED} - * <P>Type: INTEGER</P> - * <P>Default: 0</P> - */ - public static final String INSTALL_STATE = "install_state"; - - public static class InstallState { - public static final int UNKNOWN = 0; - public static final int INSTALLING = 1; - public static final int UPDATING = 2; - public static final int INSTALLED = 3; - } - } - - /** - * Key-value table which assigns a component (ex wallpaper) to a theme's package - */ - public static class MixnMatchColumns { - public static final Uri CONTENT_URI = Uri.withAppendedPath(AUTHORITY_URI, "mixnmatch"); - - /** - * The unique key for a row. See the KEY_* constants - * for valid examples - * <P>Type: TEXT</P> - */ - public static final String COL_KEY = "key"; - - /** - * The package name that corresponds to a given component. - * <P>Type: String</P> - */ - public static final String COL_VALUE = "value"; - - /** - * The package name that corresponds to where this component was applied from previously - * <P>Type: String</P> - */ - public static final String COL_PREV_VALUE = "previous_value"; - - /** - * Time when this entry was last updated - * <P>Type: INTEGER</P> - */ - public static final String COL_UPDATE_TIME = "update_time"; - - /* - * The unique ID for the component within a theme. - * Always 0 unless multiples of a component exist. - * <P>Type: INTEGER (long)</P> - */ - public static final String COL_COMPONENT_ID = "component_id"; - - /** - * Valid keys - */ - public static final String KEY_HOMESCREEN = "mixnmatch_homescreen"; - public static final String KEY_LOCKSCREEN = "mixnmatch_lockscreen"; - public static final String KEY_ICONS = "mixnmatch_icons"; - public static final String KEY_STATUS_BAR = "mixnmatch_status_bar"; - public static final String KEY_BOOT_ANIM = "mixnmatch_boot_anim"; - public static final String KEY_FONT = "mixnmatch_font"; - public static final String KEY_ALARM = "mixnmatch_alarm"; - public static final String KEY_NOTIFICATIONS = "mixnmatch_notifications"; - public static final String KEY_RINGTONE = "mixnmatch_ringtone"; - public static final String KEY_OVERLAYS = "mixnmatch_overlays"; - public static final String KEY_NAVIGATION_BAR = "mixnmatch_navigation_bar"; - public static final String KEY_LIVE_LOCK_SCREEN = "mixnmatch_live_lock_screen"; - - public static final String[] ROWS = { KEY_HOMESCREEN, - KEY_LOCKSCREEN, - KEY_ICONS, - KEY_STATUS_BAR, - KEY_BOOT_ANIM, - KEY_FONT, - KEY_NOTIFICATIONS, - KEY_RINGTONE, - KEY_ALARM, - KEY_OVERLAYS, - KEY_NAVIGATION_BAR, - KEY_LIVE_LOCK_SCREEN - }; - - /** - * For a given key value in the MixNMatch table, return the column - * associated with it in the Themes Table. This is useful for URI based - * elements like wallpaper where the caller wishes to determine the - * wallpaper URI. - */ - public static String componentToImageColName(String component) { - if (component.equals(MixnMatchColumns.KEY_HOMESCREEN)) { - return ThemesColumns.HOMESCREEN_URI; - } else if (component.equals(MixnMatchColumns.KEY_LOCKSCREEN)) { - return ThemesColumns.LOCKSCREEN_URI; - } else if (component.equals(MixnMatchColumns.KEY_BOOT_ANIM)) { - return ThemesColumns.BOOT_ANIM_URI; - } else if (component.equals(MixnMatchColumns.KEY_FONT)) { - return ThemesColumns.FONT_URI; - } else if (component.equals(MixnMatchColumns.KEY_ICONS)) { - return ThemesColumns.ICON_URI; - } else if (component.equals(MixnMatchColumns.KEY_STATUS_BAR)) { - return ThemesColumns.STATUSBAR_URI; - } else if (component.equals(MixnMatchColumns.KEY_NOTIFICATIONS)) { - throw new IllegalArgumentException("Notifications mixnmatch component does not have a related column"); - } else if (component.equals(MixnMatchColumns.KEY_RINGTONE)) { - throw new IllegalArgumentException("Ringtone mixnmatch component does not have a related column"); - } else if (component.equals(MixnMatchColumns.KEY_OVERLAYS)) { - return ThemesColumns.OVERLAYS_URI; - } else if (component.equals(MixnMatchColumns.KEY_ALARM)) { - throw new IllegalArgumentException( - "Alarm mixnmatch component does not have a related column"); - } else if (component.equals(MixnMatchColumns.KEY_NAVIGATION_BAR)) { - throw new IllegalArgumentException( - "Navigation bar mixnmatch component does not have a related column"); - } else if (component.equals(MixnMatchColumns.KEY_LIVE_LOCK_SCREEN)) { - throw new IllegalArgumentException( - "Live lock screen mixnmatch component does not have a related column"); - } - return null; - } - - /** - * A component in the themes table (IE "mods_wallpaper") has an - * equivalent key in mixnmatch table - */ - public static String componentToMixNMatchKey(String component) { - if (component.equals(ThemesColumns.MODIFIES_LAUNCHER)) { - return MixnMatchColumns.KEY_HOMESCREEN; - } else if (component.equals(ThemesColumns.MODIFIES_ICONS)) { - return MixnMatchColumns.KEY_ICONS; - } else if (component.equals(ThemesColumns.MODIFIES_LOCKSCREEN)) { - return MixnMatchColumns.KEY_LOCKSCREEN; - } else if (component.equals(ThemesColumns.MODIFIES_FONTS)) { - return MixnMatchColumns.KEY_FONT; - } else if (component.equals(ThemesColumns.MODIFIES_BOOT_ANIM)) { - return MixnMatchColumns.KEY_BOOT_ANIM; - } else if (component.equals(ThemesColumns.MODIFIES_ALARMS)) { - return MixnMatchColumns.KEY_ALARM; - } else if (component.equals(ThemesColumns.MODIFIES_NOTIFICATIONS)) { - return MixnMatchColumns.KEY_NOTIFICATIONS; - } else if (component.equals(ThemesColumns.MODIFIES_RINGTONES)) { - return MixnMatchColumns.KEY_RINGTONE; - } else if (component.equals(ThemesColumns.MODIFIES_OVERLAYS)) { - return MixnMatchColumns.KEY_OVERLAYS; - } else if (component.equals(ThemesColumns.MODIFIES_STATUS_BAR)) { - return MixnMatchColumns.KEY_STATUS_BAR; - } else if (component.equals(ThemesColumns.MODIFIES_NAVIGATION_BAR)) { - return MixnMatchColumns.KEY_NAVIGATION_BAR; - } else if (component.equals(ThemesColumns.MODIFIES_LIVE_LOCK_SCREEN)) { - return MixnMatchColumns.KEY_LIVE_LOCK_SCREEN; - } - return null; - } - - /** - * A mixnmatch key in has an - * equivalent value in the themes table - */ - public static String mixNMatchKeyToComponent(String mixnmatchKey) { - if (mixnmatchKey.equals(MixnMatchColumns.KEY_HOMESCREEN)) { - return ThemesColumns.MODIFIES_LAUNCHER; - } else if (mixnmatchKey.equals(MixnMatchColumns.KEY_ICONS)) { - return ThemesColumns.MODIFIES_ICONS; - } else if (mixnmatchKey.equals(MixnMatchColumns.KEY_LOCKSCREEN)) { - return ThemesColumns.MODIFIES_LOCKSCREEN; - } else if (mixnmatchKey.equals(MixnMatchColumns.KEY_FONT)) { - return ThemesColumns.MODIFIES_FONTS; - } else if (mixnmatchKey.equals(MixnMatchColumns.KEY_BOOT_ANIM)) { - return ThemesColumns.MODIFIES_BOOT_ANIM; - } else if (mixnmatchKey.equals(MixnMatchColumns.KEY_ALARM)) { - return ThemesColumns.MODIFIES_ALARMS; - } else if (mixnmatchKey.equals(MixnMatchColumns.KEY_NOTIFICATIONS)) { - return ThemesColumns.MODIFIES_NOTIFICATIONS; - } else if (mixnmatchKey.equals(MixnMatchColumns.KEY_RINGTONE)) { - return ThemesColumns.MODIFIES_RINGTONES; - } else if (mixnmatchKey.equals(MixnMatchColumns.KEY_OVERLAYS)) { - return ThemesColumns.MODIFIES_OVERLAYS; - } else if (mixnmatchKey.equals(MixnMatchColumns.KEY_STATUS_BAR)) { - return ThemesColumns.MODIFIES_STATUS_BAR; - } else if (mixnmatchKey.equals(MixnMatchColumns.KEY_NAVIGATION_BAR)) { - return ThemesColumns.MODIFIES_NAVIGATION_BAR; - } else if (mixnmatchKey.equals(MixnMatchColumns.KEY_LIVE_LOCK_SCREEN)) { - return ThemesColumns.MODIFIES_LIVE_LOCK_SCREEN; - } - return null; - } - } - - /** - * Table containing cached preview files for a given theme - */ - public static class PreviewColumns { - /** - * Uri for retrieving the previews table. - * Querying the themes provider using this URI will return a cursor with a key and value - * columns, and a row for each component. - */ - public static final Uri CONTENT_URI = Uri.withAppendedPath(AUTHORITY_URI, "previews"); - - /** - * Uri for retrieving the previews for the currently applied components. - * Querying the themes provider using this URI will return a cursor with a single row - * containing all the previews for the components that are currently applied. - */ - public static final Uri APPLIED_URI = Uri.withAppendedPath(AUTHORITY_URI, - "applied_previews"); - - /** - * Uri for retrieving the default previews for the theme. - * Querying the themes provider using this URI will return a cursor with a single row - * containing all the previews for the default components of the current theme. - */ - public static final Uri COMPONENTS_URI = Uri.withAppendedPath(AUTHORITY_URI, - "components_previews"); - - /** - * The unique ID for a row. - * <P>Type: INTEGER (long)</P> - */ - public static final String _ID = "_id"; - - /** - * The unique ID for the theme these previews belong to. - * <P>Type: INTEGER (long)</P> - */ - public static final String THEME_ID = "theme_id"; - - /** - * The unique ID for the component within a theme. - * <P>Type: INTEGER (long)</P> - */ - public static final String COMPONENT_ID = "component_id"; - - /** - * The unique key for a row. See the Valid key constants section below - * for valid examples - * <P>Type: TEXT</P> - */ - public static final String COL_KEY = "key"; - - /** - * The package name that corresponds to a given component. - * <P>Type: String</P> - */ - public static final String COL_VALUE = "value"; - - /** - * Valid keys - */ - - /** - * Cached image of the themed status bar background. - * <P>Type: String (file path)</P> - */ - public static final String STATUSBAR_BACKGROUND = "statusbar_background"; - - /** - * Cached image of the themed bluetooth status icon. - * <P>Type: String (file path)</P> - */ - public static final String STATUSBAR_BLUETOOTH_ICON = "statusbar_bluetooth_icon"; - - /** - * Cached image of the themed wifi status icon. - * <P>Type: String (file path)</P> - */ - public static final String STATUSBAR_WIFI_ICON = "statusbar_wifi_icon"; - - /** - * Cached image of the themed cellular signal status icon. - * <P>Type: String (file path)</P> - */ - public static final String STATUSBAR_SIGNAL_ICON = "statusbar_signal_icon"; - - /** - * Cached image of the themed battery using portrait style. - * <P>Type: String (file path)</P> - */ - public static final String STATUSBAR_BATTERY_PORTRAIT = "statusbar_battery_portrait"; - - /** - * Cached image of the themed battery using landscape style. - * <P>Type: String (file path)</P> - */ - public static final String STATUSBAR_BATTERY_LANDSCAPE = "statusbar_battery_landscape"; - - /** - * Cached image of the themed battery using circle style. - * <P>Type: String (file path)</P> - */ - public static final String STATUSBAR_BATTERY_CIRCLE = "statusbar_battery_circle"; - - /** - * The themed color used for clock text in the status bar. - * <P>Type: INTEGER (int)</P> - */ - public static final String STATUSBAR_CLOCK_TEXT_COLOR = "statusbar_clock_text_color"; - - /** - * The themed margin value between the wifi and rssi signal icons. - * <P>Type: INTEGER (int)</P> - */ - public static final String STATUSBAR_WIFI_COMBO_MARGIN_END = "wifi_combo_margin_end"; - - /** - * Cached image of the themed navigation bar background. - * <P>Type: String (file path)</P> - */ - public static final String NAVBAR_BACKGROUND = "navbar_background"; - - /** - * Cached image of the themed back button. - * <P>Type: String (file path)</P> - */ - public static final String NAVBAR_BACK_BUTTON = "navbar_back_button"; - - /** - * Cached image of the themed home button. - * <P>Type: String (file path)</P> - */ - public static final String NAVBAR_HOME_BUTTON = "navbar_home_button"; - - /** - * Cached image of the themed recents button. - * <P>Type: String (file path)</P> - */ - public static final String NAVBAR_RECENT_BUTTON = "navbar_recent_button"; - - /** - * Cached image of the 1/3 icons - * <P>Type: String (file path)</P> - */ - public static final String ICON_PREVIEW_1 = "icon_preview_1"; - - /** - * Cached image of the 2/3 icons - * <P>Type: String (file path)</P> - */ - public static final String ICON_PREVIEW_2 = "icon_preview_2"; - - /** - * Cached image of the 3/3 icons - * <P>Type: String (file path)</P> - */ - public static final String ICON_PREVIEW_3 = "icon_preview_3"; - - /** - * Full path to the theme's wallpaper asset. - * <P>Type: String (file path)</P> - */ - public static final String WALLPAPER_FULL = "wallpaper_full"; - - /** - * Cached preview of the theme's wallpaper which is larger than the thumbnail - * but smaller than the full sized wallpaper. - * <P>Type: String (file path)</P> - */ - public static final String WALLPAPER_PREVIEW = "wallpaper_preview"; - - /** - * Cached thumbnail of the theme's wallpaper - * <P>Type: String (file path)</P> - */ - public static final String WALLPAPER_THUMBNAIL = "wallpaper_thumbnail"; - - /** - * Cached preview of the theme's lockscreen wallpaper which is larger than the thumbnail - * but smaller than the full sized lockscreen wallpaper. - * <P>Type: String (file path)</P> - */ - public static final String LOCK_WALLPAPER_PREVIEW = "lock_wallpaper_preview"; - - /** - * Cached thumbnail of the theme's lockscreen wallpaper - * <P>Type: String (file path)</P> - */ - public static final String LOCK_WALLPAPER_THUMBNAIL = "lock_wallpaper_thumbnail"; - - /** - * Cached preview of UI controls representing the theme's style - * <P>Type: String (file path)</P> - */ - public static final String STYLE_PREVIEW = "style_preview"; - - /** - * Cached thumbnail preview of UI controls representing the theme's style - * <P>Type: String (file path)</P> - */ - public static final String STYLE_THUMBNAIL = "style_thumbnail"; - - /** - * Cached thumbnail of the theme's boot animation - * <P>Type: String (file path)</P> - */ - public static final String BOOTANIMATION_THUMBNAIL = "bootanimation_thumbnail"; - - /** - * Cached preview of live lock screen - * <P>Type: String (file path)</P> - */ - public static final String LIVE_LOCK_SCREEN_PREVIEW = "live_lock_screen_preview"; - - /** - * Cached thumbnail preview of live lock screen - * <P>Type: String (file path)</P> - */ - public static final String LIVE_LOCK_SCREEN_THUMBNAIL = "live_lock_screen_thumbnail"; - - public static final String[] VALID_KEYS = { - STATUSBAR_BACKGROUND, - STATUSBAR_BLUETOOTH_ICON, - STATUSBAR_WIFI_ICON, - STATUSBAR_SIGNAL_ICON, - STATUSBAR_BATTERY_PORTRAIT, - STATUSBAR_BATTERY_LANDSCAPE, - STATUSBAR_BATTERY_CIRCLE, - STATUSBAR_CLOCK_TEXT_COLOR, - STATUSBAR_WIFI_COMBO_MARGIN_END, - NAVBAR_BACKGROUND, - NAVBAR_BACK_BUTTON, - NAVBAR_HOME_BUTTON, - NAVBAR_RECENT_BUTTON, - ICON_PREVIEW_1, - ICON_PREVIEW_2, - ICON_PREVIEW_3, - WALLPAPER_FULL, - WALLPAPER_PREVIEW, - WALLPAPER_THUMBNAIL, - LOCK_WALLPAPER_PREVIEW, - LOCK_WALLPAPER_THUMBNAIL, - STYLE_PREVIEW, - STYLE_THUMBNAIL, - BOOTANIMATION_THUMBNAIL, - LIVE_LOCK_SCREEN_PREVIEW, - LIVE_LOCK_SCREEN_THUMBNAIL, - }; - } - - public static class ThemeMixColumns { - /** - * Uri for accessing theme mixes - */ - public static final Uri CONTENT_URI = Uri.withAppendedPath(AUTHORITY_URI, "theme_mixes"); - - /** - * Uri for retrieving the previews for the a theme mix. - * Querying the themes provider using this URI will return a cursor with a single row - * containing all the previews for the components associated with the given theme mix. - */ - public static final Uri PREVIEWS_URI = Uri.withAppendedPath(AUTHORITY_URI, - "theme_mix_previews"); - - /** - * The unique ID for a row. - * <P>Type: INTEGER (long)</P> - */ - public static final String _ID = "_id"; - - /** - * The name of this mix. - * <P>Type: TEXT</P> - */ - public static final String TITLE = "title"; - - } - - public static class ThemeMixEntryColumns { - /** - * Uri for accessing theme mix entries. - * These are the individual components associated with the saved theme mixes. - */ - public static final Uri CONTENT_URI = - Uri.withAppendedPath(AUTHORITY_URI, "theme_mix_entries"); - - /** - * The unique ID for a row. - * <P>Type: INTEGER (long)</P> - */ - public static final String _ID = "_id"; - - /** - * The unique ID of the theme mix this entry is for - * <P>Type: INTEGER (long)</P> - */ - public static final String THEME_MIX_ID = "theme_mix_id"; - - /** - * The component type this entry is associated with - * <P>Type: TEXT</P> - * <P>Valid types are: - * {@link ThemesColumns#MODIFIES_ALARMS} - * {@link ThemesColumns#MODIFIES_BOOT_ANIM} - * {@link ThemesColumns#MODIFIES_FONTS} - * {@link ThemesColumns#MODIFIES_ICONS} - * {@link ThemesColumns#MODIFIES_LAUNCHER}</P> - * {@link ThemesColumns#MODIFIES_LIVE_LOCK_SCREEN} - * {@link ThemesColumns#MODIFIES_LOCKSCREEN} - * {@link ThemesColumns#MODIFIES_NAVIGATION_BAR} - * {@link ThemesColumns#MODIFIES_NOTIFICATIONS} - * {@link ThemesColumns#MODIFIES_OVERLAYS} - * {@link ThemesColumns#MODIFIES_RINGTONES} - * {@link ThemesColumns#MODIFIES_STATUS_BAR} - */ - public static final String COMPONENT_TYPE = "component_type"; - - /* - * The unique ID for the component within a theme. - * Always 0 unless multiples of a component exist. - * <P>Type: INTEGER (long)</P> - */ - public static final String COMPONENT_ID = "component_id"; - - /** - * Unique text to identify the theme package associated with this entry. - * <P>Type: TEXT</P> - */ - public static final String PACKAGE_NAME = "package_name"; - - /** - * The name of the theme associated with this entry. - * <P>Type: TEXT</P> - */ - public static final String THEME_NAME = "theme_name"; - - /** - * Whether the theme associated with this entry is currently installed. - * <P>Type: INTEGER (0|1)</P> - */ - public static final String IS_INSTALLED = "installed"; - } -} diff --git a/sdk/src/java/lineageos/themes/IThemeChangeListener.aidl b/sdk/src/java/lineageos/themes/IThemeChangeListener.aidl deleted file mode 100644 index 565bcb9b..00000000 --- a/sdk/src/java/lineageos/themes/IThemeChangeListener.aidl +++ /dev/null @@ -1,23 +0,0 @@ -/* - * Copyright (C) 2014-2016 The CyanogenMod Project - * - * 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. - */ - -package lineageos.themes; - -/** {@hide} */ -oneway interface IThemeChangeListener { - void onProgress(int progress); - void onFinish(boolean isSuccess); -} diff --git a/sdk/src/java/lineageos/themes/IThemeProcessingListener.aidl b/sdk/src/java/lineageos/themes/IThemeProcessingListener.aidl deleted file mode 100644 index f8e79bfb..00000000 --- a/sdk/src/java/lineageos/themes/IThemeProcessingListener.aidl +++ /dev/null @@ -1,22 +0,0 @@ -/* - * Copyright (C) 2014-2016 The CyanogenMod Project - * - * 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. - */ - -package lineageos.themes; - -/** {@hide} */ -oneway interface IThemeProcessingListener { - void onFinishedProcessing(String pkgName); -} diff --git a/sdk/src/java/lineageos/themes/IThemeService.aidl b/sdk/src/java/lineageos/themes/IThemeService.aidl deleted file mode 100644 index 39e1c6ed..00000000 --- a/sdk/src/java/lineageos/themes/IThemeService.aidl +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Copyright (C) 2014-2016 The CyanogenMod Project - * - * 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. - */ - -package lineageos.themes; - -import lineageos.themes.IThemeChangeListener; -import lineageos.themes.IThemeProcessingListener; -import lineageos.themes.ThemeChangeRequest; - -import java.util.Map; - -/** {@hide} */ -interface IThemeService { - oneway void requestThemeChangeUpdates(in IThemeChangeListener listener); - oneway void removeUpdates(in IThemeChangeListener listener); - - oneway void requestThemeChange(in ThemeChangeRequest request, boolean removePerAppThemes); - oneway void applyDefaultTheme(); - boolean isThemeApplying(); - int getProgress(); - - boolean processThemeResources(String themePkgName); - boolean isThemeBeingProcessed(String themePkgName); - oneway void registerThemeProcessingListener(in IThemeProcessingListener listener); - oneway void unregisterThemeProcessingListener(in IThemeProcessingListener listener); - - oneway void rebuildResourceCache(); - - long getLastThemeChangeTime(); - int getLastThemeChangeRequestType(); -} diff --git a/sdk/src/java/lineageos/themes/ThemeChangeRequest.aidl b/sdk/src/java/lineageos/themes/ThemeChangeRequest.aidl deleted file mode 100644 index aaa90194..00000000 --- a/sdk/src/java/lineageos/themes/ThemeChangeRequest.aidl +++ /dev/null @@ -1,19 +0,0 @@ -/* - * Copyright (C) 2015-2016 The CyanogenMod Project - * - * 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. - */ - -package lineageos.themes; - -parcelable ThemeChangeRequest; diff --git a/sdk/src/java/lineageos/themes/ThemeChangeRequest.java b/sdk/src/java/lineageos/themes/ThemeChangeRequest.java deleted file mode 100644 index aaba4f09..00000000 --- a/sdk/src/java/lineageos/themes/ThemeChangeRequest.java +++ /dev/null @@ -1,324 +0,0 @@ -/* - * Copyright (C) 2015-2016 The CyanogenMod Project - * - * 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. - */ -package lineageos.themes; - -//import android.content.pm.ThemeUtils; -import android.content.res.ThemeConfig; -import android.os.Parcel; -import android.os.Parcelable; - -import lineageos.os.Concierge; -import lineageos.os.Concierge.ParcelInfo; - -import java.util.Collections; -import java.util.HashMap; -import java.util.Map; - -import static lineageos.providers.ThemesContract.ThemesColumns.*; - -public final class ThemeChangeRequest implements Parcelable { - public static final int DEFAULT_WALLPAPER_ID = -1; - - private final Map<String, String> mThemeComponents = new HashMap<>(); - private final Map<String, String> mPerAppOverlays = new HashMap<>(); - private RequestType mRequestType; - private long mWallpaperId = -1; - - public String getOverlayThemePackageName() { - return getThemePackageNameForComponent(MODIFIES_OVERLAYS); - } - - public String getStatusBarThemePackageName() { - return getThemePackageNameForComponent(MODIFIES_STATUS_BAR); - } - - public String getNavBarThemePackageName() { - return getThemePackageNameForComponent(MODIFIES_NAVIGATION_BAR); - } - - public String getFontThemePackageName() { - return getThemePackageNameForComponent(MODIFIES_FONTS); - } - - public String getIconsThemePackageName() { - return getThemePackageNameForComponent(MODIFIES_ICONS); - } - - public String getBootanimationThemePackageName() { - return getThemePackageNameForComponent(MODIFIES_BOOT_ANIM); - } - - public String getWallpaperThemePackageName() { - return getThemePackageNameForComponent(MODIFIES_LAUNCHER); - } - - public String getLockWallpaperThemePackageName() { - return getThemePackageNameForComponent(MODIFIES_LOCKSCREEN); - } - - public String getAlarmThemePackageName() { - return getThemePackageNameForComponent(MODIFIES_ALARMS); - } - - public String getNotificationThemePackageName() { - return getThemePackageNameForComponent(MODIFIES_NOTIFICATIONS); - } - - public String getRingtoneThemePackageName() { - return getThemePackageNameForComponent(MODIFIES_RINGTONES); - } - - public String getLiveLockScreenThemePackageName() { - return getThemePackageNameForComponent(MODIFIES_LIVE_LOCK_SCREEN); - } - - public final Map<String, String> getThemeComponentsMap() { - return Collections.unmodifiableMap(mThemeComponents); - } - - public long getWallpaperId() { - return mWallpaperId; - } - - /** - * Get the mapping for per app themes - * @return A mapping of apps and the theme to apply for each one. or null if none set. - */ - public final Map<String, String> getPerAppOverlays() { - return Collections.unmodifiableMap(mPerAppOverlays); - } - - public int getNumChangesRequested() { - return mThemeComponents.size() + mPerAppOverlays.size(); - } - - public RequestType getReqeustType() { - return mRequestType; - } - - private String getThemePackageNameForComponent(String componentName) { - return mThemeComponents.get(componentName); - } - - private ThemeChangeRequest(Map<String, String> components, Map<String, String> perAppThemes, - RequestType requestType, long wallpaperId) { - if (components != null) { - mThemeComponents.putAll(components); - } - if (perAppThemes != null) { - mPerAppOverlays.putAll(perAppThemes); - } - mRequestType = requestType; - mWallpaperId = wallpaperId; - } - - private ThemeChangeRequest(Parcel source) { - // Read parcelable version via the Concierge - ParcelInfo parcelInfo = Concierge.receiveParcel(source); - int parcelableVersion = parcelInfo.getParcelVersion(); - - int numComponents = source.readInt(); - for (int i = 0; i < numComponents; i++) { - mThemeComponents.put(source.readString(), source.readString()); - } - - numComponents = source.readInt(); - for (int i = 0 ; i < numComponents; i++) { - mPerAppOverlays.put(source.readString(), source.readString()); - } - mRequestType = RequestType.values()[source.readInt()]; - mWallpaperId = source.readLong(); - - // Complete parcel info for the concierge - parcelInfo.complete(); - } - - @Override - public int describeContents() { - return 0; - } - - @Override - public void writeToParcel(Parcel dest, int flags) { - // Tell the concierge to prepare the parcel - ParcelInfo parcelInfo = Concierge.prepareParcel(dest); - - dest.writeInt(mThemeComponents.size()); - for (String component : mThemeComponents.keySet()) { - dest.writeString(component); - dest.writeString(mThemeComponents.get(component)); - } - dest.writeInt((mPerAppOverlays.size())); - for (String appPkgName : mPerAppOverlays.keySet()) { - dest.writeString(appPkgName); - dest.writeString(mPerAppOverlays.get(appPkgName)); - } - dest.writeInt(mRequestType.ordinal()); - dest.writeLong(mWallpaperId); - - // Complete the parcel info for the concierge - parcelInfo.complete(); - } - - public static final Parcelable.Creator<ThemeChangeRequest> CREATOR = - new Parcelable.Creator<ThemeChangeRequest>() { - @Override - public ThemeChangeRequest createFromParcel(Parcel source) { - return new ThemeChangeRequest(source); - } - - @Override - public ThemeChangeRequest[] newArray(int size) { - return new ThemeChangeRequest[size]; - } - }; - - public enum RequestType { - USER_REQUEST, - USER_REQUEST_MIXNMATCH, - THEME_UPDATED, - THEME_REMOVED, - THEME_RESET - } - - public static class Builder { - Map<String, String> mThemeComponents = new HashMap<>(); - Map<String, String> mPerAppOverlays = new HashMap<>(); - RequestType mRequestType = RequestType.USER_REQUEST; - long mWallpaperId; - - public Builder() {} - - public Builder(ThemeConfig themeConfig) { - if (themeConfig != null) { - buildChangeRequestFromThemeConfig(themeConfig); - } - } - - public Builder setOverlay(String pkgName) { - return setComponent(MODIFIES_OVERLAYS, pkgName); - } - - public Builder setStatusBar(String pkgName) { - return setComponent(MODIFIES_STATUS_BAR, pkgName); - } - - public Builder setNavBar(String pkgName) { - return setComponent(MODIFIES_NAVIGATION_BAR, pkgName); - } - - public Builder setFont(String pkgName) { - return setComponent(MODIFIES_FONTS, pkgName); - } - - public Builder setIcons(String pkgName) { - return setComponent(MODIFIES_ICONS, pkgName); - } - - public Builder setBootanimation(String pkgName) { - return setComponent(MODIFIES_BOOT_ANIM, pkgName); - } - - public Builder setWallpaper(String pkgName) { - return setComponent(MODIFIES_LAUNCHER, pkgName); - } - - // Used in the case that more than one wallpaper exists for a given pkg name - public Builder setWallpaperId(long id) { - mWallpaperId = id; - return this; - } - - public Builder setLockWallpaper(String pkgName) { - return setComponent(MODIFIES_LOCKSCREEN, pkgName); - } - - public Builder setAlarm(String pkgName) { - return setComponent(MODIFIES_ALARMS, pkgName); - } - - public Builder setNotification(String pkgName) { - return setComponent(MODIFIES_NOTIFICATIONS, pkgName); - } - - public Builder setRingtone(String pkgName) { - return setComponent(MODIFIES_RINGTONES, pkgName); - } - - public Builder setLiveLockScreen(String pkgName) { - return setComponent(MODIFIES_LIVE_LOCK_SCREEN, pkgName); - } - - public Builder setComponent(String component, String pkgName) { - if (pkgName != null) { - mThemeComponents.put(component, pkgName); - } else { - mThemeComponents.remove(component); - } - return this; - } - - public Builder setAppOverlay(String appPkgName, String themePkgName) { - if (appPkgName != null) { - if (themePkgName != null) { - mPerAppOverlays.put(appPkgName, themePkgName); - } else { - mPerAppOverlays.remove(appPkgName); - } - } - - return this; - } - - public Builder setRequestType(RequestType requestType) { - mRequestType = requestType != null ? requestType : RequestType.USER_REQUEST; - return this; - } - - public ThemeChangeRequest build() { - return new ThemeChangeRequest(mThemeComponents, mPerAppOverlays, - mRequestType, mWallpaperId); - } - - private void buildChangeRequestFromThemeConfig(ThemeConfig themeConfig) { - if (themeConfig.getFontPkgName() != null) { - this.setFont(themeConfig.getFontPkgName()); - } - if (themeConfig.getIconPackPkgName() != null) { - this.setIcons(themeConfig.getIconPackPkgName()); - } - if (themeConfig.getOverlayPkgName() != null) { - this.setOverlay(themeConfig.getOverlayPkgName()); - } - if (themeConfig.getOverlayForStatusBar() != null) { - this.setStatusBar(themeConfig.getOverlayForStatusBar()); - } - if (themeConfig.getOverlayForNavBar() != null) { - this.setNavBar(themeConfig.getOverlayForNavBar()); - } - - // Check if there are any per-app overlays using this theme - final Map<String, ThemeConfig.AppTheme> themes = themeConfig.getAppThemes(); - for (String appPkgName : themes.keySet()) { - /* - if (ThemeUtils.isPerAppThemeComponent(appPkgName)) { - this.setAppOverlay(appPkgName, themes.get(appPkgName).getOverlayPkgName()); - } - */ - } - } - } -} diff --git a/sdk/src/java/lineageos/themes/ThemeManager.java b/sdk/src/java/lineageos/themes/ThemeManager.java deleted file mode 100644 index 5671c605..00000000 --- a/sdk/src/java/lineageos/themes/ThemeManager.java +++ /dev/null @@ -1,396 +0,0 @@ -/* - * Copyright (C) 2014-2016 The CyanogenMod Project - * - * 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. - */ - -package lineageos.themes; - -import android.content.Context; -import android.os.Handler; -import android.os.IBinder; -import android.os.Looper; -import android.os.RemoteException; -import android.os.ServiceManager; -import android.util.ArraySet; -import android.util.Log; - -import lineageos.app.LineageContextConstants; -import lineageos.themes.ThemeChangeRequest.RequestType; - -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import java.util.Set; - -/** - * Manages changing and applying of themes. - * <p>Get an instance of this class by calling blah blah blah</p> - */ -public class ThemeManager { - private static final String TAG = ThemeManager.class.getName(); - private static IThemeService sService; - private static ThemeManager sInstance; - private static Handler mHandler; - - private Set<ThemeChangeListener> mChangeListeners = new ArraySet<>(); - - private Set<ThemeProcessingListener> mProcessingListeners = new ArraySet<>(); - - private ThemeManager(Context context) { - sService = getService(); - if (context.getPackageManager().hasSystemFeature( - LineageContextConstants.Features.THEMES) && sService == null) { - Log.wtf(TAG, "Unable to get ThemeManagerService. The service either" + - " crashed, was not started, or the interface has been called to early in" + - " SystemServer init"); - } - mHandler = new Handler(Looper.getMainLooper()); - } - - public static ThemeManager getInstance(Context context) { - if (sInstance == null) { - sInstance = new ThemeManager(context); - } - - return sInstance; - } - - /** @hide */ - public static IThemeService getService() { - if (sService != null) { - return sService; - } - IBinder b = ServiceManager.getService(LineageContextConstants.LINEAGE_THEME_SERVICE); - if (b != null) { - sService = IThemeService.Stub.asInterface(b); - return sService; - } - return null; - } - - private final IThemeChangeListener mThemeChangeListener = new IThemeChangeListener.Stub() { - @Override - public void onProgress(final int progress) throws RemoteException { - mHandler.post(new Runnable() { - @Override - public void run() { - synchronized (mChangeListeners) { - List<ThemeChangeListener> listenersToRemove = new ArrayList<>(); - for (ThemeChangeListener listener : mChangeListeners) { - try { - listener.onProgress(progress); - } catch (Throwable e) { - Log.w(TAG, "Unable to update theme change progress", e); - listenersToRemove.add(listener); - } - } - if (listenersToRemove.size() > 0) { - for (ThemeChangeListener listener : listenersToRemove) { - mChangeListeners.remove(listener); - } - } - } - } - }); - } - - @Override - public void onFinish(final boolean isSuccess) throws RemoteException { - mHandler.post(new Runnable() { - @Override - public void run() { - synchronized (mChangeListeners) { - List<ThemeChangeListener> listenersToRemove = new ArrayList<>(); - for (ThemeChangeListener listener : mChangeListeners) { - try { - listener.onFinish(isSuccess); - } catch (Throwable e) { - Log.w(TAG, "Unable to update theme change listener", e); - listenersToRemove.add(listener); - } - } - if (listenersToRemove.size() > 0) { - for (ThemeChangeListener listener : listenersToRemove) { - mChangeListeners.remove(listener); - } - } - } - } - }); - } - }; - - private final IThemeProcessingListener mThemeProcessingListener = - new IThemeProcessingListener.Stub() { - @Override - public void onFinishedProcessing(final String pkgName) throws RemoteException { - mHandler.post(new Runnable() { - @Override - public void run() { - synchronized (mProcessingListeners) { - List<ThemeProcessingListener> listenersToRemove = new ArrayList<>(); - for (ThemeProcessingListener listener : mProcessingListeners) { - try { - listener.onFinishedProcessing(pkgName); - } catch (Throwable e) { - Log.w(TAG, "Unable to update theme change progress", e); - listenersToRemove.add(listener); - } - } - if (listenersToRemove.size() > 0) { - for (ThemeProcessingListener listener : listenersToRemove) { - mProcessingListeners.remove(listener); - } - } - } - } - }); - } - }; - - - /** - * @deprecated Use {@link ThemeManager#registerThemeChangeListener(ThemeChangeListener)} instead - */ - @Deprecated - public void addClient(ThemeChangeListener listener) { - registerThemeChangeListener(listener); - } - - /** - * @deprecated Use {@link ThemeManager#unregisterThemeChangeListener(ThemeChangeListener)} - * instead - */ - @Deprecated - public void removeClient(ThemeChangeListener listener) { - unregisterThemeChangeListener(listener); - } - - /** - * @deprecated Use {@link ThemeManager#unregisterThemeChangeListener(ThemeChangeListener)} - * instead - */ - @Deprecated - public void onClientPaused(ThemeChangeListener listener) { - unregisterThemeChangeListener(listener); - } - - /** - * @deprecated Use {@link ThemeManager#registerThemeChangeListener(ThemeChangeListener)} instead - */ - @Deprecated - public void onClientResumed(ThemeChangeListener listener) { - registerThemeChangeListener(listener); - } - - /** - * @deprecated Use {@link ThemeManager#unregisterThemeChangeListener(ThemeChangeListener)} - * instead - */ - @Deprecated - public void onClientDestroyed(ThemeChangeListener listener) { - unregisterThemeChangeListener(listener); - } - - /** - * Register a {@link ThemeChangeListener} to be notified when a theme is done being processed. - * @param listener {@link ThemeChangeListener} to register - */ - public void registerThemeChangeListener(ThemeChangeListener listener) { - synchronized (mChangeListeners) { - if (mChangeListeners.contains(listener)) { - throw new IllegalArgumentException("Listener already registered"); - } - if (mChangeListeners.size() == 0) { - try { - sService.requestThemeChangeUpdates(mThemeChangeListener); - } catch (RemoteException e) { - Log.w(TAG, "Unable to register listener", e); - } - } - mChangeListeners.add(listener); - } - } - - /** - * Unregister a {@link ThemeChangeListener} - * @param listener {@link ThemeChangeListener} to unregister - */ - public void unregisterThemeChangeListener(ThemeChangeListener listener) { - synchronized (mChangeListeners) { - mChangeListeners.remove(listener); - if (mChangeListeners.size() == 0) { - try { - sService.removeUpdates(mThemeChangeListener); - } catch (RemoteException e) { - Log.w(TAG, "Unable to unregister listener", e); - } - } - } - } - - /** - * Register a {@link ThemeProcessingListener} to be notified when a theme is done being - * processed. - * @param listener {@link ThemeProcessingListener} to register - */ - public void registerProcessingListener(ThemeProcessingListener listener) { - synchronized (mProcessingListeners) { - if (mProcessingListeners.contains(listener)) { - throw new IllegalArgumentException("Listener already registered"); - } - if (mProcessingListeners.size() == 0) { - try { - sService.registerThemeProcessingListener(mThemeProcessingListener); - } catch (RemoteException e) { - Log.w(TAG, "Unable to register listener", e); - } - } - mProcessingListeners.add(listener); - } - } - - /** - * Unregister a {@link ThemeProcessingListener}. - * @param listener {@link ThemeProcessingListener} to unregister - */ - public void unregisterProcessingListener(ThemeProcessingListener listener) { - synchronized (mProcessingListeners) { - mProcessingListeners.remove(listener); - if (mProcessingListeners.size() == 0) { - try { - sService.unregisterThemeProcessingListener(mThemeProcessingListener); - } catch (RemoteException e) { - Log.w(TAG, "Unable to unregister listener", e); - } - } - } - } - - public void requestThemeChange(String pkgName, List<String> components) { - requestThemeChange(pkgName, components, true); - } - - public void requestThemeChange(String pkgName, List<String> components, - boolean removePerAppThemes) { - Map<String, String> componentMap = new HashMap<>(components.size()); - for (String component : components) { - componentMap.put(component, pkgName); - } - requestThemeChange(componentMap, removePerAppThemes); - } - - public void requestThemeChange(Map<String, String> componentMap) { - requestThemeChange(componentMap, true); - } - - public void requestThemeChange(Map<String, String> componentMap, boolean removePerAppThemes) { - ThemeChangeRequest.Builder builder = new ThemeChangeRequest.Builder(); - for (String component : componentMap.keySet()) { - builder.setComponent(component, componentMap.get(component)); - } - - requestThemeChange(builder.build(), removePerAppThemes); - } - - public void requestThemeChange(ThemeChangeRequest request, boolean removePerAppThemes) { - try { - sService.requestThemeChange(request, removePerAppThemes); - } catch (RemoteException e) { - logThemeServiceException(e); - } - } - - public void applyDefaultTheme() { - try { - sService.applyDefaultTheme(); - } catch (RemoteException e) { - logThemeServiceException(e); - } - } - - public boolean isThemeApplying() { - try { - return sService.isThemeApplying(); - } catch (RemoteException e) { - logThemeServiceException(e); - } - - return false; - } - - public boolean isThemeBeingProcessed(String themePkgName) { - try { - return sService.isThemeBeingProcessed(themePkgName); - } catch (RemoteException e) { - logThemeServiceException(e); - } - return false; - } - - public int getProgress() { - try { - return sService.getProgress(); - } catch (RemoteException e) { - logThemeServiceException(e); - } - return -1; - } - - public boolean processThemeResources(String themePkgName) { - try { - return sService.processThemeResources(themePkgName); - } catch (RemoteException e) { - logThemeServiceException(e); - } - return false; - } - - public long getLastThemeChangeTime() { - try { - return sService.getLastThemeChangeTime(); - } catch (RemoteException e) { - logThemeServiceException(e); - } - return 0; - } - - public ThemeChangeRequest.RequestType getLastThemeChangeRequestType() { - try { - int type = sService.getLastThemeChangeRequestType(); - return (type >= 0 && type < RequestType.values().length) - ? RequestType.values()[type] - : null; - } catch (RemoteException e) { - logThemeServiceException(e); - } - - return null; - } - - private void logThemeServiceException(Exception e) { - Log.w(TAG, "Unable to access ThemeService", e); - } - - public interface ThemeChangeListener { - void onProgress(int progress); - void onFinish(boolean isSuccess); - } - - public interface ThemeProcessingListener { - void onFinishedProcessing(String pkgName); - } -} - diff --git a/sdk/src/java/org/lineageos/internal/themes/IIconCacheManager.aidl b/sdk/src/java/org/lineageos/internal/themes/IIconCacheManager.aidl deleted file mode 100644 index 68986361..00000000 --- a/sdk/src/java/org/lineageos/internal/themes/IIconCacheManager.aidl +++ /dev/null @@ -1,24 +0,0 @@ -/* - * Copyright (C) 2016 The CyanogenMod Project - * - * 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. - */ - -package org.lineageos.internal.themes; - -import android.graphics.Bitmap; - -/** @hide */ -interface IIconCacheManager { - boolean cacheComposedIcon(in Bitmap icon, String path); -} diff --git a/sdk/src/java/org/lineageos/internal/util/ImageUtils.java b/sdk/src/java/org/lineageos/internal/util/ImageUtils.java index 8b1105f7..d8b56b30 100644 --- a/sdk/src/java/org/lineageos/internal/util/ImageUtils.java +++ b/sdk/src/java/org/lineageos/internal/util/ImageUtils.java @@ -31,9 +31,6 @@ import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.io.InputStream; -import lineageos.providers.ThemesContract.PreviewColumns; -import lineageos.providers.ThemesContract.ThemesColumns; - import libcore.io.IoUtils; public class ImageUtils { @@ -126,207 +123,4 @@ public class ImageUtils { } return compressed; } - - /** - * Crops the lock screen image and returns a new InputStream of the cropped area - * - * @param pkgName Name of the theme package - * @param context The context - * - * @return a new InputStream of the cropped image/*" - */ - public static InputStream getCroppedKeyguardStream(String pkgName, Context context) - throws IllegalArgumentException { - if (TextUtils.isEmpty(pkgName)) { - throw new IllegalArgumentException("'pkgName' cannot be null or empty!"); - } - if (context == null) { - throw new IllegalArgumentException("'context' cannot be null!"); - } - - InputStream cropped = null; - InputStream stream = null; - try { - stream = getOriginalKeyguardStream(pkgName, context); - if (stream == null) { - return null; - } - Point point = getImageDimension(stream); - IoUtils.closeQuietly(stream); - if (point == null || point.x == 0 || point.y == 0) { - return null; - } - WallpaperManager wm = WallpaperManager.getInstance(context); - int outWidth = wm.getDesiredMinimumWidth(); - int outHeight = wm.getDesiredMinimumHeight(); - stream = getOriginalKeyguardStream(pkgName, context); - if (stream == null) { - return null; - } - cropped = cropImage(stream, point.x, point.y, outWidth, outHeight); - } catch (Exception e) { - Log.e(TAG, "Exception " + e); - } finally { - IoUtils.closeQuietly(stream); - } - return cropped; - } - - /** - * Crops the wallpaper image and returns a new InputStream of the cropped area - * - * @param pkgName Name of the theme package - * @param context The context - * - * @return a new InputStream of the cropped image/*" - */ - public static InputStream getCroppedWallpaperStream(String pkgName, long wallpaperId, - Context context) { - if (TextUtils.isEmpty(pkgName)) { - throw new IllegalArgumentException("'pkgName' cannot be null or empty!"); - } - if (context == null) { - throw new IllegalArgumentException("'context' cannot be null!"); - } - - InputStream cropped = null; - InputStream stream = null; - try { - stream = getOriginalWallpaperStream(pkgName, wallpaperId, context); - if (stream == null) { - return null; - } - Point point = getImageDimension(stream); - IoUtils.closeQuietly(stream); - if (point == null || point.x == 0 || point.y == 0) { - return null; - } - WallpaperManager wm = WallpaperManager.getInstance(context); - int outWidth = wm.getDesiredMinimumWidth(); - int outHeight = wm.getDesiredMinimumHeight(); - stream = getOriginalWallpaperStream(pkgName, wallpaperId, context); - if (stream == null) { - return null; - } - cropped = cropImage(stream, point.x, point.y, outWidth, outHeight); - } catch (Exception e) { - Log.e(TAG, "Exception " + e); - } finally { - IoUtils.closeQuietly(stream); - } - return cropped; - } - - private static InputStream getOriginalKeyguardStream(String pkgName, Context context) { - if (TextUtils.isEmpty(pkgName) || context == null) { - return null; - } - - InputStream inputStream = null; - try { - //Get input WP stream from the theme - Context themeCtx = context.createPackageContext(pkgName, - Context.CONTEXT_IGNORE_SECURITY); - AssetManager assetManager = themeCtx.getAssets(); - String wpPath = ThemeUtils.getLockscreenWallpaperPath(assetManager); - if (wpPath == null) { - Log.w(TAG, "Not setting lockscreen wp because wallpaper file was not found."); - } else { - inputStream = ThemeUtils.getInputStreamFromAsset(themeCtx, - ASSET_URI_PREFIX + wpPath); - } - } catch (Exception e) { - Log.e(TAG, "There was an error setting lockscreen wp for pkg " + pkgName, e); - } - return inputStream; - } - - private static InputStream getOriginalWallpaperStream(String pkgName, long componentId, - Context context) { - String wpPath; - if (TextUtils.isEmpty(pkgName) || context == null) { - return null; - } - - InputStream inputStream = null; - String selection = ThemesColumns.PKG_NAME + "= ?"; - String[] selectionArgs = {pkgName}; - Cursor c = context.getContentResolver().query(ThemesColumns.CONTENT_URI, - null, selection, - selectionArgs, null); - if (c == null || c.getCount() < 1) { - if (c != null) c.close(); - return null; - } else { - c.moveToFirst(); - } - - try { - Context themeContext = context.createPackageContext(pkgName, - Context.CONTEXT_IGNORE_SECURITY); - boolean isLegacyTheme = c.getInt( - c.getColumnIndex(ThemesColumns.IS_LEGACY_THEME)) == 1; - String wallpaper = c.getString( - c.getColumnIndex(ThemesColumns.WALLPAPER_URI)); - if (wallpaper != null) { - if (URLUtil.isAssetUrl(wallpaper)) { - inputStream = ThemeUtils.getInputStreamFromAsset(themeContext, wallpaper); - } else { - inputStream = context.getContentResolver().openInputStream( - Uri.parse(wallpaper)); - } - } else { - // try and get the wallpaper directly from the apk if the URI was null - Context themeCtx = context.createPackageContext(pkgName, - Context.CONTEXT_IGNORE_SECURITY); - AssetManager assetManager = themeCtx.getAssets(); - wpPath = queryWpPathFromComponentId(context, pkgName, componentId); - if (wpPath == null) wpPath = ThemeUtils.getWallpaperPath(assetManager); - if (wpPath == null) { - Log.e(TAG, "Not setting wp because wallpaper file was not found."); - } else { - inputStream = ThemeUtils.getInputStreamFromAsset(themeCtx, - ASSET_URI_PREFIX + wpPath); - } - } - } catch (Exception e) { - Log.e(TAG, "getWallpaperStream: " + e); - } finally { - c.close(); - } - - return inputStream; - } - - private static String queryWpPathFromComponentId(Context context, String pkgName, - long componentId) { - String wpPath = null; - String[] projection = new String[] { PreviewColumns.COL_VALUE }; - String selection = ThemesColumns.PKG_NAME + "=? AND " + - PreviewColumns.COMPONENT_ID + "=? AND " + - PreviewColumns.COL_KEY + "=?"; - String[] selectionArgs = new String[] { - pkgName, - Long.toString(componentId), - PreviewColumns.WALLPAPER_FULL - }; - - Cursor c = context.getContentResolver() - .query(PreviewColumns.COMPONENTS_URI, - projection, selection, selectionArgs, null); - if (c != null) { - try { - if (c.moveToFirst()) { - int valIdx = c.getColumnIndex(PreviewColumns.COL_VALUE); - wpPath = c.getString(valIdx); - } - } catch(Exception e) { - Log.e(TAG, "Could not get wallpaper path", e); - } finally { - c.close(); - } - } - return wpPath; - } } - diff --git a/sdk/src/java/org/lineageos/internal/util/QSConstants.java b/sdk/src/java/org/lineageos/internal/util/QSConstants.java index 45059770..bad015a9 100644 --- a/sdk/src/java/org/lineageos/internal/util/QSConstants.java +++ b/sdk/src/java/org/lineageos/internal/util/QSConstants.java @@ -60,7 +60,6 @@ public class QSConstants { public static final String DYNAMIC_TILE_SU = "su"; public static final String DYNAMIC_TILE_ADB = "adb"; public static final String DYNAMIC_TILE_LIVE_DISPLAY = "live_display"; - public static final String DYNAMIC_TILE_THEMES = "themes"; protected static final ArrayList<String> STATIC_TILES_AVAILABLE = new ArrayList<String>(); protected static final ArrayList<String> DYNAMIC_TILES_AVAILBLE = new ArrayList<String>(); @@ -108,6 +107,5 @@ public class QSConstants { DYNAMIC_TILES_AVAILBLE.add(DYNAMIC_TILE_NEXT_ALARM); DYNAMIC_TILES_AVAILBLE.add(DYNAMIC_TILE_SU); DYNAMIC_TILES_AVAILBLE.add(DYNAMIC_TILE_LIVE_DISPLAY); - DYNAMIC_TILES_AVAILBLE.add(DYNAMIC_TILE_THEMES); } } diff --git a/sdk/src/java/org/lineageos/internal/util/ThemeUtils.java b/sdk/src/java/org/lineageos/internal/util/ThemeUtils.java deleted file mode 100644 index 784bc39a..00000000 --- a/sdk/src/java/org/lineageos/internal/util/ThemeUtils.java +++ /dev/null @@ -1,687 +0,0 @@ -/* - * Copyright (C) 2016 The CyanogenMod Project - * - * 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. - */ - -package org.lineageos.internal.util; - -import android.content.BroadcastReceiver; -import android.content.ContentResolver; -import android.content.ContentValues; -import android.content.Context; -import android.content.ContextWrapper; -import android.content.IntentFilter; -import android.content.pm.PackageInfo; -import android.content.pm.PackageManager; -import android.content.pm.PackageParser; -import android.content.res.AssetManager; -import android.content.res.ThemeConfig; -import android.database.Cursor; -import android.media.RingtoneManager; -import android.net.Uri; -import android.os.FileUtils; -import android.os.SystemProperties; -import android.provider.MediaStore; -import android.text.TextUtils; -import android.util.ArraySet; -import android.util.DisplayMetrics; -import android.util.Log; - -import android.view.WindowManager; -import lineageos.providers.LineageSettings; -import lineageos.providers.ThemesContract.ThemesColumns; - -import java.io.BufferedInputStream; -import java.io.BufferedOutputStream; -import java.io.BufferedReader; -import java.io.File; -import java.io.FileOutputStream; -import java.io.IOException; -import java.io.InputStream; -import java.io.InputStreamReader; -import java.io.OutputStream; -import java.nio.ByteBuffer; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import java.util.Set; -import java.util.zip.CRC32; -import java.util.zip.ZipEntry; -import java.util.zip.ZipInputStream; -import java.util.zip.ZipOutputStream; - -import static android.content.res.ThemeConfig.SYSTEM_DEFAULT; - -/** - * @hide - */ -public class ThemeUtils { - private static final String TAG = ThemeUtils.class.getSimpleName(); - - // Package name for any app which does not have a specific theme applied - private static final String DEFAULT_PKG = "default"; - - private static final Set<String> SUPPORTED_THEME_COMPONENTS = new ArraySet<>(); - - static { - SUPPORTED_THEME_COMPONENTS.add(ThemesColumns.MODIFIES_ALARMS); - SUPPORTED_THEME_COMPONENTS.add(ThemesColumns.MODIFIES_BOOT_ANIM); - SUPPORTED_THEME_COMPONENTS.add(ThemesColumns.MODIFIES_FONTS); - SUPPORTED_THEME_COMPONENTS.add(ThemesColumns.MODIFIES_ICONS); - SUPPORTED_THEME_COMPONENTS.add(ThemesColumns.MODIFIES_LAUNCHER); - SUPPORTED_THEME_COMPONENTS.add(ThemesColumns.MODIFIES_LIVE_LOCK_SCREEN); - SUPPORTED_THEME_COMPONENTS.add(ThemesColumns.MODIFIES_LOCKSCREEN); - SUPPORTED_THEME_COMPONENTS.add(ThemesColumns.MODIFIES_NAVIGATION_BAR); - SUPPORTED_THEME_COMPONENTS.add(ThemesColumns.MODIFIES_NOTIFICATIONS); - SUPPORTED_THEME_COMPONENTS.add(ThemesColumns.MODIFIES_OVERLAYS); - SUPPORTED_THEME_COMPONENTS.add(ThemesColumns.MODIFIES_RINGTONES); - SUPPORTED_THEME_COMPONENTS.add(ThemesColumns.MODIFIES_STATUS_BAR); - } - - // Constants for theme change broadcast - public static final String ACTION_THEME_CHANGED = "org.lineageos.intent.action.THEME_CHANGED"; - public static final String EXTRA_COMPONENTS = "components"; - public static final String EXTRA_REQUEST_TYPE = "request_type"; - public static final String EXTRA_UPDATE_TIME = "update_time"; - - // path to asset lockscreen and wallpapers directory - public static final String LOCKSCREEN_WALLPAPER_PATH = "lockscreen"; - public static final String WALLPAPER_PATH = "wallpapers"; - - // path to external theme resources, i.e. bootanimation.zip - public static final String SYSTEM_THEME_PATH = "/data/system/theme"; - public static final String SYSTEM_THEME_FONT_PATH = SYSTEM_THEME_PATH + File.separator + "fonts"; - public static final String SYSTEM_THEME_RINGTONE_PATH = SYSTEM_THEME_PATH - + File.separator + "ringtones"; - public static final String SYSTEM_THEME_NOTIFICATION_PATH = SYSTEM_THEME_PATH - + File.separator + "notifications"; - public static final String SYSTEM_THEME_ALARM_PATH = SYSTEM_THEME_PATH - + File.separator + "alarms"; - public static final String SYSTEM_THEME_ICON_CACHE_DIR = SYSTEM_THEME_PATH - + File.separator + "icons"; - // internal path to bootanimation.zip inside theme apk - public static final String THEME_BOOTANIMATION_PATH = "assets/bootanimation/bootanimation.zip"; - - public static final String SYSTEM_MEDIA_PATH = "/system/media/audio"; - public static final String SYSTEM_ALARMS_PATH = SYSTEM_MEDIA_PATH + File.separator - + "alarms"; - public static final String SYSTEM_RINGTONES_PATH = SYSTEM_MEDIA_PATH + File.separator - + "ringtones"; - public static final String SYSTEM_NOTIFICATIONS_PATH = SYSTEM_MEDIA_PATH + File.separator - + "notifications"; - - private static final String MEDIA_CONTENT_URI = "content://media/internal/audio/media"; - - public static final int SYSTEM_TARGET_API = 0; - - /* Path to cached theme resources */ - public static final String RESOURCE_CACHE_DIR = "/data/resource-cache/"; - - /* Path inside a theme APK to the overlay folder */ - public static final String OVERLAY_PATH = "assets/overlays/"; - public static final String ICONS_PATH = "assets/icons/"; - public static final String COMMON_RES_PATH = "assets/overlays/common/"; - - public static final String IDMAP_SUFFIX = "@idmap"; - public static final String COMMON_RES_TARGET = "common"; - - public static final String ICON_HASH_FILENAME = "hash"; - - public static final String FONT_XML = "fonts.xml"; - - public static String getDefaultThemePackageName(Context context) { - final String defaultThemePkg = LineageSettings.Secure.getString(context.getContentResolver(), - LineageSettings.Secure.DEFAULT_THEME_PACKAGE); - if (!TextUtils.isEmpty(defaultThemePkg)) { - PackageManager pm = context.getPackageManager(); - try { - if (pm.getPackageInfo(defaultThemePkg, 0) != null) { - return defaultThemePkg; - } - } catch (PackageManager.NameNotFoundException e) { - // doesn't exist so system will be default - Log.w(TAG, "Default theme " + defaultThemePkg + " not found", e); - } - } - - return SYSTEM_DEFAULT; - } - - /** - * Returns a mutable list of all theme components - * @return - */ - public static List<String> getAllComponents() { - List<String> components = new ArrayList<>(SUPPORTED_THEME_COMPONENTS.size()); - components.addAll(SUPPORTED_THEME_COMPONENTS); - return components; - } - - /** - * Returns a mutable list of all the theme components supported by a given package - * NOTE: This queries the themes content provider. If there isn't a provider installed - * or if it is too early in the boot process this method will not work. - */ - public static List<String> getSupportedComponents(Context context, String pkgName) { - List<String> supportedComponents = new ArrayList<>(); - - String selection = ThemesColumns.PKG_NAME + "= ?"; - String[] selectionArgs = new String[]{ pkgName }; - Cursor c = context.getContentResolver().query(ThemesColumns.CONTENT_URI, - null, selection, selectionArgs, null); - - if (c != null) { - if (c.moveToFirst()) { - List<String> allComponents = getAllComponents(); - for (String component : allComponents) { - int index = c.getColumnIndex(component); - if (c.getInt(index) == 1) { - supportedComponents.add(component); - } - } - } - c.close(); - } - return supportedComponents; - } - - /** - * Get the components from the default theme. If the default theme is not SYSTEM then any - * components that are not in the default theme will come from SYSTEM to create a complete - * component map. - * @param context - * @return - */ - public static Map<String, String> getDefaultComponents(Context context) { - String defaultThemePkg = getDefaultThemePackageName(context); - List<String> defaultComponents = null; - List<String> systemComponents = getSupportedComponents(context, SYSTEM_DEFAULT); - if (!DEFAULT_PKG.equals(defaultThemePkg)) { - defaultComponents = getSupportedComponents(context, defaultThemePkg); - } - - Map<String, String> componentMap = new HashMap<>(systemComponents.size()); - if (defaultComponents != null) { - for (String component : defaultComponents) { - componentMap.put(component, defaultThemePkg); - } - } - for (String component : systemComponents) { - if (!componentMap.containsKey(component)) { - componentMap.put(component, SYSTEM_DEFAULT); - } - } - - return componentMap; - } - - /** - * Get the path to the icons for the given theme - * @param pkgName - * @return - */ - public static String getIconPackDir(String pkgName) { - return getOverlayResourceCacheDir(pkgName) + File.separator + "icons"; - } - - public static String getIconHashFile(String pkgName) { - return getIconPackDir(pkgName) + File.separator + ICON_HASH_FILENAME; - } - - public static String getIconPackApkPath(String pkgName) { - return getIconPackDir(pkgName) + "/resources.apk"; - } - - public static String getIconPackResPath(String pkgName) { - return getIconPackDir(pkgName) + "/resources.arsc"; - } - - public static String getIdmapPath(String targetPkgName, String overlayPkgName) { - return getTargetCacheDir(targetPkgName, overlayPkgName) + File.separator + "idmap"; - } - - public static String getOverlayPathToTarget(String targetPkgName) { - StringBuilder sb = new StringBuilder(); - sb.append(OVERLAY_PATH); - sb.append(targetPkgName); - sb.append('/'); - return sb.toString(); - } - - public static String getCommonPackageName(String themePackageName) { - if (TextUtils.isEmpty(themePackageName)) return null; - - return COMMON_RES_TARGET; - } - - /** - * Create SYSTEM_THEME_PATH directory if it does not exist - */ - public static void createThemeDirIfNotExists() { - createDirIfNotExists(SYSTEM_THEME_PATH); - } - - /** - * Create SYSTEM_FONT_PATH directory if it does not exist - */ - public static void createFontDirIfNotExists() { - createDirIfNotExists(SYSTEM_THEME_FONT_PATH); - } - - /** - * Create SYSTEM_THEME_RINGTONE_PATH directory if it does not exist - */ - public static void createRingtoneDirIfNotExists() { - createDirIfNotExists(SYSTEM_THEME_RINGTONE_PATH); - } - - /** - * Create SYSTEM_THEME_NOTIFICATION_PATH directory if it does not exist - */ - public static void createNotificationDirIfNotExists() { - createDirIfNotExists(SYSTEM_THEME_NOTIFICATION_PATH); - } - - /** - * Create SYSTEM_THEME_ALARM_PATH directory if it does not exist - */ - public static void createAlarmDirIfNotExists() { - createDirIfNotExists(SYSTEM_THEME_ALARM_PATH); - } - - /** - * Create SYSTEM_THEME_ICON_CACHE_DIR directory if it does not exist - */ - public static void createIconCacheDirIfNotExists() { - createDirIfNotExists(SYSTEM_THEME_ICON_CACHE_DIR); - } - - public static void createCacheDirIfNotExists() throws IOException { - File file = new File(RESOURCE_CACHE_DIR); - if (!file.exists() && !file.mkdir()) { - throw new IOException("Could not create dir: " + file.toString()); - } - FileUtils.setPermissions(file, FileUtils.S_IRWXU - | FileUtils.S_IRWXG | FileUtils.S_IROTH | FileUtils.S_IXOTH, -1, -1); - } - - public static void createResourcesDirIfNotExists(String targetPkgName, String overlayPkgName) - throws IOException { - createDirIfNotExists(getOverlayResourceCacheDir(overlayPkgName)); - File file = new File(getTargetCacheDir(targetPkgName, overlayPkgName)); - if (!file.exists() && !file.mkdir()) { - throw new IOException("Could not create dir: " + file.toString()); - } - FileUtils.setPermissions(file, FileUtils.S_IRWXU - | FileUtils.S_IRWXG | FileUtils.S_IROTH | FileUtils.S_IXOTH, -1, -1); - } - - public static void createIconDirIfNotExists(String pkgName) throws IOException { - createDirIfNotExists(getOverlayResourceCacheDir(pkgName)); - File file = new File(getIconPackDir(pkgName)); - if (!file.exists() && !file.mkdir()) { - throw new IOException("Could not create dir: " + file.toString()); - } - FileUtils.setPermissions(file, FileUtils.S_IRWXU - | FileUtils.S_IRWXG | FileUtils.S_IROTH | FileUtils.S_IXOTH, -1, -1); - } - - public static void clearIconCache() { - FileUtils.deleteContents(new File(SYSTEM_THEME_ICON_CACHE_DIR)); - } - - public static void registerThemeChangeReceiver(final Context context, - final BroadcastReceiver receiver) { - IntentFilter filter = new IntentFilter(ACTION_THEME_CHANGED); - - context.registerReceiver(receiver, filter); - } - - public static String getLockscreenWallpaperPath(AssetManager assetManager) throws IOException { - String[] assets = assetManager.list(LOCKSCREEN_WALLPAPER_PATH); - String asset = getFirstNonEmptyAsset(assets); - if (asset == null) return null; - return LOCKSCREEN_WALLPAPER_PATH + File.separator + asset; - } - - public static String getWallpaperPath(AssetManager assetManager) throws IOException { - String[] assets = assetManager.list(WALLPAPER_PATH); - String asset = getFirstNonEmptyAsset(assets); - if (asset == null) return null; - return WALLPAPER_PATH + File.separator + asset; - } - - public static List<String> getWallpaperPathList(AssetManager assetManager) - throws IOException { - List<String> wallpaperList = new ArrayList<String>(); - String[] assets = assetManager.list(WALLPAPER_PATH); - for (String asset : assets) { - if (!TextUtils.isEmpty(asset)) { - wallpaperList.add(WALLPAPER_PATH + File.separator + asset); - } - } - return wallpaperList; - } - - /** - * Get the root path of the resource cache for the given theme - * @param themePkgName - * @return Root resource cache path for the given theme - */ - public static String getOverlayResourceCacheDir(String themePkgName) { - return RESOURCE_CACHE_DIR + themePkgName; - } - - /** - * Get the path of the resource cache for the given target and theme - * @param targetPkgName - * @param themePkg - * @return Path to the resource cache for this target and theme - */ - public static String getTargetCacheDir(String targetPkgName, PackageInfo themePkg) { - return getTargetCacheDir(targetPkgName, themePkg.packageName); - } - - public static String getTargetCacheDir(String targetPkgName, PackageParser.Package themePkg) { - return getTargetCacheDir(targetPkgName, themePkg.packageName); - } - - public static String getTargetCacheDir(String targetPkgName, String themePkgName) { - return getOverlayResourceCacheDir(themePkgName) + File.separator + targetPkgName; - } - - /** - * Creates a theme'd context using the overlay applied to SystemUI - * @param context Base context - * @return Themed context - */ - public static Context createUiContext(final Context context) { - try { - Context uiContext = context.createPackageContext("com.android.systemui", - Context.CONTEXT_RESTRICTED); - return new ThemedUiContext(uiContext, context.getApplicationContext()); - } catch (PackageManager.NameNotFoundException e) { - } - - return null; - } - - /** - * Scale the boot animation to better fit the device by editing the desc.txt found - * in the bootanimation.zip - * @param context Context to use for getting an instance of the WindowManager - * @param input InputStream of the original bootanimation.zip - * @param dst Path to store the newly created bootanimation.zip - * @throws IOException - */ - public static void copyAndScaleBootAnimation(Context context, InputStream input, String dst) - throws IOException { - final OutputStream os = new FileOutputStream(dst); - final ZipOutputStream zos = new ZipOutputStream(new BufferedOutputStream(os)); - final ZipInputStream bootAni = new ZipInputStream(new BufferedInputStream(input)); - ZipEntry ze; - - zos.setMethod(ZipOutputStream.STORED); - final byte[] bytes = new byte[4096]; - int len; - while ((ze = bootAni.getNextEntry()) != null) { - ZipEntry entry = new ZipEntry(ze.getName()); - entry.setMethod(ZipEntry.STORED); - entry.setCrc(ze.getCrc()); - entry.setSize(ze.getSize()); - entry.setCompressedSize(ze.getSize()); - if (!ze.getName().equals("desc.txt")) { - // just copy this entry straight over into the output zip - zos.putNextEntry(entry); - while ((len = bootAni.read(bytes)) > 0) { - zos.write(bytes, 0, len); - } - } else { - String line; - BufferedReader reader = new BufferedReader(new InputStreamReader(bootAni)); - final String[] info = reader.readLine().split(" "); - - int scaledWidth; - int scaledHeight; - WindowManager wm = (WindowManager)context.getSystemService(Context.WINDOW_SERVICE); - DisplayMetrics dm = new DisplayMetrics(); - wm.getDefaultDisplay().getRealMetrics(dm); - // just in case the device is in landscape orientation we will - // swap the values since most (if not all) animations are portrait - if (dm.widthPixels > dm.heightPixels) { - scaledWidth = dm.heightPixels; - scaledHeight = dm.widthPixels; - } else { - scaledWidth = dm.widthPixels; - scaledHeight = dm.heightPixels; - } - - int width = Integer.parseInt(info[0]); - int height = Integer.parseInt(info[1]); - - if (width == height) - scaledHeight = scaledWidth; - else { - // adjust scaledHeight to retain original aspect ratio - float scale = (float)scaledWidth / (float)width; - int newHeight = (int)((float)height * scale); - if (newHeight < scaledHeight) - scaledHeight = newHeight; - } - - CRC32 crc32 = new CRC32(); - int size = 0; - ByteBuffer buffer = ByteBuffer.wrap(bytes); - line = String.format("%d %d %s\n", scaledWidth, scaledHeight, info[2]); - buffer.put(line.getBytes()); - size += line.getBytes().length; - crc32.update(line.getBytes()); - while ((line = reader.readLine()) != null) { - line = String.format("%s\n", line); - buffer.put(line.getBytes()); - size += line.getBytes().length; - crc32.update(line.getBytes()); - } - entry.setCrc(crc32.getValue()); - entry.setSize(size); - entry.setCompressedSize(size); - zos.putNextEntry(entry); - zos.write(buffer.array(), 0, size); - } - zos.closeEntry(); - } - zos.close(); - } - - public static boolean isValidAudible(String fileName) { - return (fileName != null && - (fileName.endsWith(".mp3") || fileName.endsWith(".ogg"))); - } - - public static boolean setAudible(Context context, File ringtone, int type, String name) { - final String path = ringtone.getAbsolutePath(); - final String mimeType = name.endsWith(".ogg") ? "audio/ogg" : "audio/mp3"; - ContentValues values = new ContentValues(); - values.put(MediaStore.MediaColumns.DATA, path); - values.put(MediaStore.MediaColumns.TITLE, name); - values.put(MediaStore.MediaColumns.MIME_TYPE, mimeType); - values.put(MediaStore.MediaColumns.SIZE, ringtone.length()); - values.put(MediaStore.Audio.Media.IS_RINGTONE, type == RingtoneManager.TYPE_RINGTONE); - values.put(MediaStore.Audio.Media.IS_NOTIFICATION, - type == RingtoneManager.TYPE_NOTIFICATION); - values.put(MediaStore.Audio.Media.IS_ALARM, type == RingtoneManager.TYPE_ALARM); - values.put(MediaStore.Audio.Media.IS_MUSIC, false); - - Uri uri = MediaStore.Audio.Media.getContentUriForPath(path); - Uri newUri = null; - Cursor c = context.getContentResolver().query(uri, - new String[] {MediaStore.MediaColumns._ID}, - MediaStore.MediaColumns.DATA + "='" + path + "'", - null, null); - if (c != null && c.getCount() > 0) { - c.moveToFirst(); - long id = c.getLong(0); - c.close(); - newUri = Uri.withAppendedPath(Uri.parse(MEDIA_CONTENT_URI), "" + id); - context.getContentResolver().update(uri, values, - MediaStore.MediaColumns._ID + "=" + id, null); - } - if (newUri == null) - newUri = context.getContentResolver().insert(uri, values); - try { - RingtoneManager.setActualDefaultRingtoneUri(context, type, newUri); - } catch (Exception e) { - return false; - } - return true; - } - - public static boolean setDefaultAudible(Context context, int type) { - final String audiblePath = getDefaultAudiblePath(type); - if (audiblePath != null) { - Uri uri = MediaStore.Audio.Media.getContentUriForPath(audiblePath); - Cursor c = context.getContentResolver().query(uri, - new String[] {MediaStore.MediaColumns._ID}, - MediaStore.MediaColumns.DATA + "='" + audiblePath + "'", - null, null); - if (c != null && c.getCount() > 0) { - c.moveToFirst(); - long id = c.getLong(0); - c.close(); - uri = Uri.withAppendedPath( - Uri.parse(MEDIA_CONTENT_URI), "" + id); - } - if (uri != null) - RingtoneManager.setActualDefaultRingtoneUri(context, type, uri); - } else { - return false; - } - return true; - } - - public static String getDefaultAudiblePath(int type) { - final String name; - final String path; - switch (type) { - case RingtoneManager.TYPE_ALARM: - name = SystemProperties.get("ro.config.alarm_alert", null); - path = name != null ? SYSTEM_ALARMS_PATH + File.separator + name : null; - break; - case RingtoneManager.TYPE_NOTIFICATION: - name = SystemProperties.get("ro.config.notification_sound", null); - path = name != null ? SYSTEM_NOTIFICATIONS_PATH + File.separator + name : null; - break; - case RingtoneManager.TYPE_RINGTONE: - name = SystemProperties.get("ro.config.ringtone", null); - path = name != null ? SYSTEM_RINGTONES_PATH + File.separator + name : null; - break; - default: - path = null; - break; - } - return path; - } - - public static void clearAudibles(Context context, String audiblePath) { - final File audibleDir = new File(audiblePath); - if (audibleDir.exists()) { - String[] files = audibleDir.list(); - final ContentResolver resolver = context.getContentResolver(); - for (String s : files) { - final String filePath = audiblePath + File.separator + s; - Uri uri = MediaStore.Audio.Media.getContentUriForPath(filePath); - resolver.delete(uri, MediaStore.MediaColumns.DATA + "=\"" - + filePath + "\"", null); - (new File(filePath)).delete(); - } - } - } - - public static InputStream getInputStreamFromAsset(Context ctx, String path) throws IOException { - if (ctx == null || path == null) return null; - - InputStream is; - String ASSET_BASE = "file:///android_asset/"; - path = path.substring(ASSET_BASE.length()); - AssetManager assets = ctx.getAssets(); - is = assets.open(path); - return is; - } - - /** - * Convenience method to determine if a theme component is a per app theme and not a standard - * component. - * @param component - * @return - */ - public static boolean isPerAppThemeComponent(String component) { - return !(DEFAULT_PKG.equals(component) - || ThemeConfig.SYSTEMUI_STATUS_BAR_PKG.equals(component) - || ThemeConfig.SYSTEMUI_NAVBAR_PKG.equals(component)); - } - - /** - * Returns the first non-empty asset name. Empty assets can occur if the APK is built - * with folders included as zip entries in the APK. Searching for files inside "folderName" via - * assetManager.list("folderName") can cause these entries to be included as empty strings. - * @param assets - * @return - */ - private static String getFirstNonEmptyAsset(String[] assets) { - if (assets == null) return null; - String filename = null; - for(String asset : assets) { - if (!TextUtils.isEmpty(asset)) { - filename = asset; - break; - } - } - return filename; - } - - private static boolean dirExists(String dirPath) { - final File dir = new File(dirPath); - return dir.exists() && dir.isDirectory(); - } - - private static void createDirIfNotExists(String dirPath) { - if (!dirExists(dirPath)) { - File dir = new File(dirPath); - if (dir.mkdir()) { - FileUtils.setPermissions(dir, FileUtils.S_IRWXU | - FileUtils.S_IRWXG| FileUtils.S_IROTH | FileUtils.S_IXOTH, -1, -1); - } - } - } - - private static class ThemedUiContext extends ContextWrapper { - private Context mAppContext; - - public ThemedUiContext(Context context, Context appContext) { - super(context); - mAppContext = appContext; - } - - @Override - public Context getApplicationContext() { - return mAppContext; - } - - @Override - public String getPackageName() { - return mAppContext.getPackageName(); - } - } -} diff --git a/tests/AndroidManifest.xml b/tests/AndroidManifest.xml index d5892938..a6aeec62 100644 --- a/tests/AndroidManifest.xml +++ b/tests/AndroidManifest.xml @@ -25,9 +25,6 @@ <uses-permission android:name="lineageos.permission.MODIFY_PROFILES" /> <uses-permission android:name="lineageos.permission.MANAGE_PERSISTENT_STORAGE" /> <uses-permission android:name="lineageos.permission.PERFORMANCE_ACCESS" /> - <uses-permission android:name="lineageos.permission.READ_THEMES" /> - <uses-permission android:name="lineageos.permission.WRITE_THEMES" /> - <uses-permission android:name="lineageos.permission.ACCESS_THEME_MANAGER" /> <uses-permission android:name="lineageos.permission.MANAGE_LIVEDISPLAY" /> <uses-permission android:name="lineageos.permission.OBSERVE_AUDIO_SESSIONS" /> <uses-permission android:name="lineageos.permission.ACCESS_WEATHER_MANAGER" /> diff --git a/tests/src/org/lineageos/tests/themes/unit/ThemeChangeRequestBuilderTest.java b/tests/src/org/lineageos/tests/themes/unit/ThemeChangeRequestBuilderTest.java deleted file mode 100644 index 1c972ef5..00000000 --- a/tests/src/org/lineageos/tests/themes/unit/ThemeChangeRequestBuilderTest.java +++ /dev/null @@ -1,304 +0,0 @@ -/** - * Copyright (C) 2016 The CyanogenMod Project - * - * 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. - */ - -package org.lineageos.tests.themes.unit; - -import android.content.res.ThemeConfig; -import android.test.AndroidTestCase; -import android.test.suitebuilder.annotation.SmallTest; - -import lineageos.themes.ThemeChangeRequest; - -import java.util.HashMap; -import java.util.Map; - -/** - * Exercise both the ThemeChangeRequest object and the builder. - */ -public class ThemeChangeRequestBuilderTest extends AndroidTestCase { - - @SmallTest - public void testConstructor() { - ThemeChangeRequest themeChangeRequest = new ThemeChangeRequest.Builder().build(); - assertNotNull(themeChangeRequest); - } - - @SmallTest - public void testThemeConfigConstructor() { - Map<String, ThemeConfig.AppTheme> dummyMap = new HashMap<>(); - ThemeConfig config = new ThemeConfig(dummyMap); - ThemeChangeRequest themeChangeRequest = new ThemeChangeRequest.Builder(config).build(); - assertNotNull(themeChangeRequest); - } - - @SmallTest - public void testGetAlarmThemePackageName() { - String expectedAlarmPackage = "dummy"; - - ThemeChangeRequest request = new ThemeChangeRequest.Builder() - .setAlarm(expectedAlarmPackage) - .build(); - - assertNotNull(request); - assertEquals(expectedAlarmPackage, request.getAlarmThemePackageName()); - } - - @SmallTest - public void testGetBootanimationThemePackageName() { - String expectedBootAnimationThemePackageName = "dummy"; - - ThemeChangeRequest request = new ThemeChangeRequest.Builder() - .setBootanimation(expectedBootAnimationThemePackageName) - .build(); - - assertNotNull(request); - assertEquals(expectedBootAnimationThemePackageName, - request.getBootanimationThemePackageName()); - } - - @SmallTest - public void testGetFontThemePackageName() { - String expectedFontThemePackageName = "dummy"; - - ThemeChangeRequest request = new ThemeChangeRequest.Builder() - .setFont(expectedFontThemePackageName) - .build(); - - assertNotNull(request); - assertEquals(expectedFontThemePackageName, - request.getFontThemePackageName()); - } - - @SmallTest - public void testGetIconsThemePackageName() { - String expectedIconThemePackageName = "dummy"; - - ThemeChangeRequest request = new ThemeChangeRequest.Builder() - .setIcons(expectedIconThemePackageName) - .build(); - - assertNotNull(request); - assertEquals(expectedIconThemePackageName, - request.getIconsThemePackageName()); - } - - @SmallTest - public void testGetLiveLockScreenThemePackageName() { - String expectedLiveLockscreenThemePN = "dummy"; - - ThemeChangeRequest request = new ThemeChangeRequest.Builder() - .setLiveLockScreen(expectedLiveLockscreenThemePN) - .build(); - - assertNotNull(request); - assertEquals(expectedLiveLockscreenThemePN, - request.getLiveLockScreenThemePackageName()); - } - - @SmallTest - public void testGetLockWallpaperThemePackageName() { - String expectedLockWallpaperThemePN = "dummy"; - - ThemeChangeRequest request = new ThemeChangeRequest.Builder() - .setLockWallpaper(expectedLockWallpaperThemePN) - .build(); - - assertNotNull(request); - assertEquals(expectedLockWallpaperThemePN, - request.getLockWallpaperThemePackageName()); - } - - @SmallTest - public void testGetNavBarThemePackageName() { - String expectedNavBarThemePackageName = "dummy"; - - ThemeChangeRequest request = new ThemeChangeRequest.Builder() - .setNavBar(expectedNavBarThemePackageName) - .build(); - - assertNotNull(request); - assertEquals(expectedNavBarThemePackageName, - request.getNavBarThemePackageName()); - } - - @SmallTest - public void testGetNotificationThemePackageName() { - String expectedNotificationThemePackageName = "dummy"; - - ThemeChangeRequest request = new ThemeChangeRequest.Builder() - .setNotification(expectedNotificationThemePackageName) - .build(); - - assertNotNull(request); - assertEquals(expectedNotificationThemePackageName, - request.getNotificationThemePackageName()); - } - - @SmallTest - public void testGetNumChangesRequested() { - int expectedNumChangesRequested = 5; - String dummyData = "dummy"; - - ThemeChangeRequest request = new ThemeChangeRequest.Builder() - .setAlarm(dummyData) - .setNavBar(dummyData) - .setBootanimation(dummyData) - .setLockWallpaper(dummyData) - .setLiveLockScreen(dummyData) - .build(); - - assertNotNull(request); - assertEquals(expectedNumChangesRequested, - request.getNumChangesRequested()); - } - - @SmallTest - public void testGetOverlayThemePackageName() { - String expectedOverlayPN = "dummy"; - - ThemeChangeRequest request = new ThemeChangeRequest.Builder() - .setOverlay(expectedOverlayPN) - .build(); - - assertNotNull(request); - assertEquals(expectedOverlayPN, - request.getOverlayThemePackageName()); - } - - @SmallTest - public void testGetPerAppOverlays() { - Map<String, String> expectedAppOverlayMap = new HashMap<>(); - - String appkey1 = "app1"; - String appkey2 = "app2"; - String appkey3 = "app3"; - String appvalue1 = "dummy1"; - String appvalue2 = "dummy2"; - String appvalue3 = "dummy3"; - - expectedAppOverlayMap.put(appkey1, appvalue1); - expectedAppOverlayMap.put(appkey2, appvalue2); - expectedAppOverlayMap.put(appkey3, appvalue3); - - ThemeChangeRequest request = new ThemeChangeRequest.Builder() - .setAppOverlay(appkey1, appvalue1) - .setAppOverlay(appkey2, appvalue2) - .setAppOverlay(appkey3, appvalue3) - .build(); - - assertNotNull(request); - Map<String, String> actualAppOverlayMap = request.getPerAppOverlays(); - for (String key : actualAppOverlayMap.keySet()) { - assertNotNull(expectedAppOverlayMap.get(key)); - assertEquals(expectedAppOverlayMap.get(key), actualAppOverlayMap.get(key)); - } - } - - @SmallTest - public void testGetReqeustType() { - ThemeChangeRequest.RequestType expectedRequestType = - ThemeChangeRequest.RequestType.USER_REQUEST; - - ThemeChangeRequest request = new ThemeChangeRequest.Builder() - .setRequestType(expectedRequestType) - .build(); - - assertNotNull(request); - assertEquals(expectedRequestType, - request.getReqeustType()); - } - - @SmallTest - public void testGetRingtoneThemePackageName() { - String expectedRingtoneThemePN = "dummy"; - - ThemeChangeRequest request = new ThemeChangeRequest.Builder() - .setRingtone(expectedRingtoneThemePN) - .build(); - - assertNotNull(request); - assertEquals(expectedRingtoneThemePN, - request.getRingtoneThemePackageName()); - } - - @SmallTest - public void testGetStatusBarThemePackageName() { - String expectedStatusBarThemePN = "dummy"; - - ThemeChangeRequest request = new ThemeChangeRequest.Builder() - .setStatusBar(expectedStatusBarThemePN) - .build(); - - assertNotNull(request); - assertEquals(expectedStatusBarThemePN, - request.getStatusBarThemePackageName()); - } - - @SmallTest - public void testGetThemeComponentsMap() { - Map<String, String> expectedAppOverlayMap = new HashMap<>(); - - String appkey1 = "app1"; - String appkey2 = "app2"; - String appkey3 = "app3"; - String appvalue1 = "dummy1"; - String appvalue2 = "dummy2"; - String appvalue3 = "dummy3"; - - expectedAppOverlayMap.put(appkey1, appvalue1); - expectedAppOverlayMap.put(appkey2, appvalue2); - expectedAppOverlayMap.put(appkey3, appvalue3); - - ThemeChangeRequest request = new ThemeChangeRequest.Builder() - .setComponent(appkey1, appvalue1) - .setComponent(appkey2, appvalue2) - .setComponent(appkey3, appvalue3) - .build(); - - assertNotNull(request); - Map<String, String> actualAppOverlayMap = request.getThemeComponentsMap(); - for (String key : actualAppOverlayMap.keySet()) { - assertNotNull(expectedAppOverlayMap.get(key)); - assertEquals(expectedAppOverlayMap.get(key), actualAppOverlayMap.get(key)); - } - } - - @SmallTest - public void testGetWallpaperId() { - long expectedWallpaperId = 123971231L; - - ThemeChangeRequest request = new ThemeChangeRequest.Builder() - .setWallpaperId(expectedWallpaperId) - .build(); - - assertNotNull(request); - assertEquals(expectedWallpaperId, - request.getWallpaperId()); - } - - @SmallTest - public void testGetWallpaperThemePackageName() { - String expectedWallpaperThemePN = "dummy"; - - ThemeChangeRequest request = new ThemeChangeRequest.Builder() - .setWallpaper(expectedWallpaperThemePN) - .build(); - - assertNotNull(request); - assertEquals(expectedWallpaperThemePN, - request.getWallpaperThemePackageName()); - } -} diff --git a/tests/src/org/lineageos/tests/themes/unit/ThemeChangeRequestTest.java b/tests/src/org/lineageos/tests/themes/unit/ThemeChangeRequestTest.java deleted file mode 100644 index 3355ca84..00000000 --- a/tests/src/org/lineageos/tests/themes/unit/ThemeChangeRequestTest.java +++ /dev/null @@ -1,461 +0,0 @@ -/** - * Copyright (C) 2016 The CyanogenMod Project - * - * 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. - */ -package org.lineageos.tests.themes.unit; - -import android.os.Parcel; -import android.test.AndroidTestCase; - -import android.test.suitebuilder.annotation.SmallTest; - -import lineageos.themes.ThemeChangeRequest; - -import java.util.HashMap; -import java.util.Map; - -/** - * Excercise the parceling of the ThemeChangeRequest object and builder. - */ -public class ThemeChangeRequestTest extends AndroidTestCase { - - @SmallTest - public void testGetAlarmThemePackageNameUnravelFromParcel() { - String expectedAlarmPackage = "dummy"; - - ThemeChangeRequest request = new ThemeChangeRequest.Builder() - .setAlarm(expectedAlarmPackage) - .build(); - - // Write to parcel - Parcel parcel = Parcel.obtain(); - request.writeToParcel(parcel, 0); - - // Rewind - parcel.setDataPosition(0); - - // Verify data when unraveling - ThemeChangeRequest fromParcel = ThemeChangeRequest.CREATOR.createFromParcel(parcel); - - assertNotNull(fromParcel); - assertEquals(expectedAlarmPackage, fromParcel.getAlarmThemePackageName()); - } - - @SmallTest - public void testGetBootanimationThemePackageNameUnravelFromParcel() { - String expectedBootAnimationThemePackageName = "dummy"; - - ThemeChangeRequest request = new ThemeChangeRequest.Builder() - .setBootanimation(expectedBootAnimationThemePackageName) - .build(); - - // Write to parcel - Parcel parcel = Parcel.obtain(); - request.writeToParcel(parcel, 0); - - // Rewind - parcel.setDataPosition(0); - - // Verify data when unraveling - ThemeChangeRequest fromParcel = ThemeChangeRequest.CREATOR.createFromParcel(parcel); - - assertNotNull(fromParcel); - assertEquals(expectedBootAnimationThemePackageName, - fromParcel.getBootanimationThemePackageName()); - } - - @SmallTest - public void testGetFontThemePackageNameUnravelFromParcel() { - String expectedFontThemePackageName = "dummy"; - - ThemeChangeRequest request = new ThemeChangeRequest.Builder() - .setFont(expectedFontThemePackageName) - .build(); - - // Write to parcel - Parcel parcel = Parcel.obtain(); - request.writeToParcel(parcel, 0); - - // Rewind - parcel.setDataPosition(0); - - // Verify data when unraveling - ThemeChangeRequest fromParcel = ThemeChangeRequest.CREATOR.createFromParcel(parcel); - - assertNotNull(fromParcel); - assertEquals(expectedFontThemePackageName, - fromParcel.getFontThemePackageName()); - } - - @SmallTest - public void testGetIconsThemePackageNameUnravelFromParcel() { - String expectedIconThemePackageName = "dummy"; - - ThemeChangeRequest request = new ThemeChangeRequest.Builder() - .setIcons(expectedIconThemePackageName) - .build(); - - // Write to parcel - Parcel parcel = Parcel.obtain(); - request.writeToParcel(parcel, 0); - - // Rewind - parcel.setDataPosition(0); - - // Verify data when unraveling - ThemeChangeRequest fromParcel = ThemeChangeRequest.CREATOR.createFromParcel(parcel); - - assertNotNull(fromParcel); - assertEquals(expectedIconThemePackageName, - fromParcel.getIconsThemePackageName()); - } - - @SmallTest - public void testGetLiveLockScreenThemePackageNameUnravelFromParcel() { - String expectedLiveLockscreenThemePN = "dummy"; - - ThemeChangeRequest request = new ThemeChangeRequest.Builder() - .setLiveLockScreen(expectedLiveLockscreenThemePN) - .build(); - - // Write to parcel - Parcel parcel = Parcel.obtain(); - request.writeToParcel(parcel, 0); - - // Rewind - parcel.setDataPosition(0); - - // Verify data when unraveling - ThemeChangeRequest fromParcel = ThemeChangeRequest.CREATOR.createFromParcel(parcel); - - assertNotNull(fromParcel); - assertEquals(expectedLiveLockscreenThemePN, - fromParcel.getLiveLockScreenThemePackageName()); - } - - @SmallTest - public void testGetLockWallpaperThemePackageNameUnravelFromParcel() { - String expectedLockWallpaperThemePN = "dummy"; - - ThemeChangeRequest request = new ThemeChangeRequest.Builder() - .setLockWallpaper(expectedLockWallpaperThemePN) - .build(); - - // Write to parcel - Parcel parcel = Parcel.obtain(); - request.writeToParcel(parcel, 0); - - // Rewind - parcel.setDataPosition(0); - - // Verify data when unraveling - ThemeChangeRequest fromParcel = ThemeChangeRequest.CREATOR.createFromParcel(parcel); - - assertNotNull(request); - assertEquals(expectedLockWallpaperThemePN, - fromParcel.getLockWallpaperThemePackageName()); - } - - @SmallTest - public void testGetNavBarThemePackageNameUnravelFromParcel() { - String expectedNavBarThemePackageName = "dummy"; - - ThemeChangeRequest request = new ThemeChangeRequest.Builder() - .setNavBar(expectedNavBarThemePackageName) - .build(); - - // Write to parcel - Parcel parcel = Parcel.obtain(); - request.writeToParcel(parcel, 0); - - // Rewind - parcel.setDataPosition(0); - - // Verify data when unraveling - ThemeChangeRequest fromParcel = ThemeChangeRequest.CREATOR.createFromParcel(parcel); - - assertNotNull(fromParcel); - assertEquals(expectedNavBarThemePackageName, - fromParcel.getNavBarThemePackageName()); - } - - @SmallTest - public void testGetNotificationThemePackageNameUnravelFromParcel() { - String expectedNotificationThemePackageName = "dummy"; - - ThemeChangeRequest request = new ThemeChangeRequest.Builder() - .setNotification(expectedNotificationThemePackageName) - .build(); - - // Write to parcel - Parcel parcel = Parcel.obtain(); - request.writeToParcel(parcel, 0); - - // Rewind - parcel.setDataPosition(0); - - // Verify data when unraveling - ThemeChangeRequest fromParcel = ThemeChangeRequest.CREATOR.createFromParcel(parcel); - - assertNotNull(request); - assertEquals(expectedNotificationThemePackageName, - fromParcel.getNotificationThemePackageName()); - } - - @SmallTest - public void testGetNumChangesRequestedUnravelFromParcel() { - int expectedNumChangesRequested = 5; - String dummyData = "dummy"; - - ThemeChangeRequest request = new ThemeChangeRequest.Builder() - .setAlarm(dummyData) - .setNavBar(dummyData) - .setBootanimation(dummyData) - .setLockWallpaper(dummyData) - .setLiveLockScreen(dummyData) - .build(); - - // Write to parcel - Parcel parcel = Parcel.obtain(); - request.writeToParcel(parcel, 0); - - // Rewind - parcel.setDataPosition(0); - - // Verify data when unraveling - ThemeChangeRequest fromParcel = ThemeChangeRequest.CREATOR.createFromParcel(parcel); - - assertNotNull(request); - assertEquals(expectedNumChangesRequested, - fromParcel.getNumChangesRequested()); - } - - @SmallTest - public void testGetOverlayThemePackageNameUnravelFromParcel() { - String expectedOverlayPN = "dummy"; - - ThemeChangeRequest request = new ThemeChangeRequest.Builder() - .setOverlay(expectedOverlayPN) - .build(); - - // Write to parcel - Parcel parcel = Parcel.obtain(); - request.writeToParcel(parcel, 0); - - // Rewind - parcel.setDataPosition(0); - - // Verify data when unraveling - ThemeChangeRequest fromParcel = ThemeChangeRequest.CREATOR.createFromParcel(parcel); - - assertNotNull(fromParcel); - assertEquals(expectedOverlayPN, - fromParcel.getOverlayThemePackageName()); - } - - @SmallTest - public void testGetPerAppOverlaysUnravelFromParcel() { - Map<String, String> expectedAppOverlayMap = new HashMap<>(); - - String appkey1 = "app1"; - String appkey2 = "app2"; - String appkey3 = "app3"; - String appvalue1 = "dummy1"; - String appvalue2 = "dummy2"; - String appvalue3 = "dummy3"; - - expectedAppOverlayMap.put(appkey1, appvalue1); - expectedAppOverlayMap.put(appkey2, appvalue2); - expectedAppOverlayMap.put(appkey3, appvalue3); - - ThemeChangeRequest request = new ThemeChangeRequest.Builder() - .setAppOverlay(appkey1, appvalue1) - .setAppOverlay(appkey2, appvalue2) - .setAppOverlay(appkey3, appvalue3) - .build(); - - // Write to parcel - Parcel parcel = Parcel.obtain(); - request.writeToParcel(parcel, 0); - - // Rewind - parcel.setDataPosition(0); - - // Verify data when unraveling - ThemeChangeRequest fromParcel = ThemeChangeRequest.CREATOR.createFromParcel(parcel); - - assertNotNull(fromParcel); - Map<String, String> actualAppOverlayMap = fromParcel.getPerAppOverlays(); - for (String key : actualAppOverlayMap.keySet()) { - assertNotNull(expectedAppOverlayMap.get(key)); - assertEquals(expectedAppOverlayMap.get(key), actualAppOverlayMap.get(key)); - } - } - - @SmallTest - public void testGetReqeustTypeUnravelFromParcel() { - ThemeChangeRequest.RequestType expectedRequestType = - ThemeChangeRequest.RequestType.USER_REQUEST; - - ThemeChangeRequest request = new ThemeChangeRequest.Builder() - .setRequestType(expectedRequestType) - .build(); - - // Write to parcel - Parcel parcel = Parcel.obtain(); - request.writeToParcel(parcel, 0); - - // Rewind - parcel.setDataPosition(0); - - // Verify data when unraveling - ThemeChangeRequest fromParcel = ThemeChangeRequest.CREATOR.createFromParcel(parcel); - - assertNotNull(fromParcel); - assertEquals(expectedRequestType, - fromParcel.getReqeustType()); - } - - @SmallTest - public void testGetRingtoneThemePackageNameUnravelFromParcel() { - String expectedRingtoneThemePN = "dummy"; - - ThemeChangeRequest request = new ThemeChangeRequest.Builder() - .setRingtone(expectedRingtoneThemePN) - .build(); - - // Write to parcel - Parcel parcel = Parcel.obtain(); - request.writeToParcel(parcel, 0); - - // Rewind - parcel.setDataPosition(0); - - // Verify data when unraveling - ThemeChangeRequest fromParcel = ThemeChangeRequest.CREATOR.createFromParcel(parcel); - - assertNotNull(fromParcel); - assertEquals(expectedRingtoneThemePN, - fromParcel.getRingtoneThemePackageName()); - } - - @SmallTest - public void testGetStatusBarThemePackageNameUnravelFromParcel() { - String expectedStatusBarThemePN = "dummy"; - - ThemeChangeRequest request = new ThemeChangeRequest.Builder() - .setStatusBar(expectedStatusBarThemePN) - .build(); - - // Write to parcel - Parcel parcel = Parcel.obtain(); - request.writeToParcel(parcel, 0); - - // Rewind - parcel.setDataPosition(0); - - // Verify data when unraveling - ThemeChangeRequest fromParcel = ThemeChangeRequest.CREATOR.createFromParcel(parcel); - - assertNotNull(fromParcel); - assertEquals(expectedStatusBarThemePN, - fromParcel.getStatusBarThemePackageName()); - } - - @SmallTest - public void testGetThemeComponentsMapUnravelFromParcel() { - Map<String, String> expectedAppOverlayMap = new HashMap<>(); - - String appkey1 = "app1"; - String appkey2 = "app2"; - String appkey3 = "app3"; - String appvalue1 = "dummy1"; - String appvalue2 = "dummy2"; - String appvalue3 = "dummy3"; - - expectedAppOverlayMap.put(appkey1, appvalue1); - expectedAppOverlayMap.put(appkey2, appvalue2); - expectedAppOverlayMap.put(appkey3, appvalue3); - - ThemeChangeRequest request = new ThemeChangeRequest.Builder() - .setComponent(appkey1, appvalue1) - .setComponent(appkey2, appvalue2) - .setComponent(appkey3, appvalue3) - .build(); - - // Write to parcel - Parcel parcel = Parcel.obtain(); - request.writeToParcel(parcel, 0); - - // Rewind - parcel.setDataPosition(0); - - // Verify data when unraveling - ThemeChangeRequest fromParcel = ThemeChangeRequest.CREATOR.createFromParcel(parcel); - - assertNotNull(fromParcel); - Map<String, String> actualAppOverlayMap = fromParcel.getThemeComponentsMap(); - for (String key : actualAppOverlayMap.keySet()) { - assertNotNull(expectedAppOverlayMap.get(key)); - assertEquals(expectedAppOverlayMap.get(key), actualAppOverlayMap.get(key)); - } - } - - @SmallTest - public void testGetWallpaperIdUnravelFromParcel() { - long expectedWallpaperId = 123971231L; - - ThemeChangeRequest request = new ThemeChangeRequest.Builder() - .setWallpaperId(expectedWallpaperId) - .build(); - - // Write to parcel - Parcel parcel = Parcel.obtain(); - request.writeToParcel(parcel, 0); - - // Rewind - parcel.setDataPosition(0); - - // Verify data when unraveling - ThemeChangeRequest fromParcel = ThemeChangeRequest.CREATOR.createFromParcel(parcel); - - assertNotNull(fromParcel); - assertEquals(expectedWallpaperId, - fromParcel.getWallpaperId()); - } - - @SmallTest - public void testGetWallpaperThemePackageNameUnravelFromParcel() { - String expectedWallpaperThemePN = "dummy"; - - ThemeChangeRequest request = new ThemeChangeRequest.Builder() - .setWallpaper(expectedWallpaperThemePN) - .build(); - - // Write to parcel - Parcel parcel = Parcel.obtain(); - request.writeToParcel(parcel, 0); - - // Rewind - parcel.setDataPosition(0); - - // Verify data when unraveling - ThemeChangeRequest fromParcel = ThemeChangeRequest.CREATOR.createFromParcel(parcel); - - assertNotNull(fromParcel); - assertEquals(expectedWallpaperThemePN, - fromParcel.getWallpaperThemePackageName()); - } - -} diff --git a/tests/src/org/lineageos/tests/themes/unit/ThemeManagerTest.java b/tests/src/org/lineageos/tests/themes/unit/ThemeManagerTest.java deleted file mode 100644 index f909cdd2..00000000 --- a/tests/src/org/lineageos/tests/themes/unit/ThemeManagerTest.java +++ /dev/null @@ -1,655 +0,0 @@ -/** - * Copyright (C) 2016 The CyanogenMod Project - * - * 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. - */ - -package org.lineageos.tests.themes.unit; - -import android.content.ContentResolver; -import android.content.Context; -import android.content.pm.PackageManager; -import android.content.res.ThemeConfig; -import android.database.Cursor; -import android.test.AndroidTestCase; -import android.test.suitebuilder.annotation.SmallTest; -import android.text.TextUtils; -import android.util.Log; - -import lineageos.providers.LineageSettings; -import lineageos.providers.ThemesContract; -import lineageos.themes.IThemeService; -import lineageos.themes.ThemeChangeRequest; -import lineageos.themes.ThemeManager; -import lineageos.themes.ThemeManager.ThemeChangeListener; - -import org.mockito.Mockito; - -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import java.util.concurrent.CountDownLatch; - -public class ThemeManagerTest extends AndroidTestCase { - private static final String TAG = ThemeManagerTest.class.getSimpleName(); - private static final int COUNTDOWN = 1; - private static final int INVALID_PROGRESS = -1; - - private ThemeManager mThemeManager; - - private static final List<String> ALL_THEME_COMPONENTS = new ArrayList<>(); - - static { - ALL_THEME_COMPONENTS.add(ThemesContract.ThemesColumns.MODIFIES_ALARMS); - ALL_THEME_COMPONENTS.add(ThemesContract.ThemesColumns.MODIFIES_BOOT_ANIM); - ALL_THEME_COMPONENTS.add(ThemesContract.ThemesColumns.MODIFIES_FONTS); - ALL_THEME_COMPONENTS.add(ThemesContract.ThemesColumns.MODIFIES_ICONS); - ALL_THEME_COMPONENTS.add(ThemesContract.ThemesColumns.MODIFIES_LAUNCHER); - ALL_THEME_COMPONENTS.add(ThemesContract.ThemesColumns.MODIFIES_LIVE_LOCK_SCREEN); - ALL_THEME_COMPONENTS.add(ThemesContract.ThemesColumns.MODIFIES_LOCKSCREEN); - ALL_THEME_COMPONENTS.add(ThemesContract.ThemesColumns.MODIFIES_NAVIGATION_BAR); - ALL_THEME_COMPONENTS.add(ThemesContract.ThemesColumns.MODIFIES_NOTIFICATIONS); - ALL_THEME_COMPONENTS.add(ThemesContract.ThemesColumns.MODIFIES_OVERLAYS); - ALL_THEME_COMPONENTS.add(ThemesContract.ThemesColumns.MODIFIES_RINGTONES); - ALL_THEME_COMPONENTS.add(ThemesContract.ThemesColumns.MODIFIES_STATUS_BAR); - } - - @Override - protected void setUp() throws Exception { - super.setUp(); - mThemeManager = ThemeManager.getInstance(getContext()); - } - - @SmallTest - public void testManagerExists() { - assertNotNull(mThemeManager); - } - - @SmallTest - public void testManagerServiceIsAvailable() { - IThemeService ilineageStatusBarManager = mThemeManager.getService(); - assertNotNull(ilineageStatusBarManager); - } - - @SmallTest - public void testApplyDefaultTheme() { - final HashMap<String, String> componentKeyMap = new HashMap<>(); - final CountDownLatch signal = new CountDownLatch(COUNTDOWN); - - // Get the default theme package - final String defaultThemePkg = getDefaultThemePackageName(mContext); - - // Get the default theme components - final List<String> components = getSupportedComponentsForTheme(mContext, defaultThemePkg); - - // Populate componentkey map since we're going to lock the thread - for (String component : components) { - String key = ThemesContract.MixnMatchColumns.componentToMixNMatchKey(component); - componentKeyMap.put(key, getPackageNameForKey(mContext, key)); - } - - // Register defaultThemeChangeListener - mThemeManager.registerThemeChangeListener(new ThemeChangeListener() { - public void onProgress(int progress) { - - } - - public void onFinish(boolean isSuccess) { - boolean assertionFailure = false; - if (isSuccess) { - for (String component : components) { - String key = ThemesContract.MixnMatchColumns. - componentToMixNMatchKey(component); - Log.d(TAG, "Verifying row " + key); - if (!verifyThemeAppliedFromPackageForRow(defaultThemePkg, - componentKeyMap.get(key), true)) { - Log.d(TAG, "Expected package " + defaultThemePkg - + " but got package " + componentKeyMap.get(key)); - assertionFailure = true; - } - } - } - mThemeManager.unregisterThemeChangeListener(this); - signal.countDown(); - if (assertionFailure) throw new AssertionError("Unable to apply default theme"); - } - }); - - // Apply the default theme - mThemeManager.applyDefaultTheme(); - - // Lock - try { - signal.await(); - } catch (InterruptedException e) { - throw new AssertionError(e); - } - } - - private ThemeChangeListener dummyThemeChangeListener = new ThemeChangeListener() { - @Override - public void onProgress(int progress) { - - } - - @Override - public void onFinish(boolean isSuccess) { - - } - }; - - @SmallTest - public void testRegisterAndUnregisterThemeChangeListener() { - // Exploit the illegalArgumentException thrown by registerThemeChangeListener to - // verify registration. - mThemeManager.registerThemeChangeListener(dummyThemeChangeListener); - - try { - mThemeManager.registerThemeChangeListener(dummyThemeChangeListener); - throw new AssertionError("Failed to register theme change listener!"); - } catch (IllegalArgumentException e) { - // EXPECTED! - } - - // Inversely, exploit that the illegal argument exception isn't thrown - // if unregistering and reregistering - mThemeManager.unregisterThemeChangeListener(dummyThemeChangeListener); - - try { - mThemeManager.registerThemeChangeListener(dummyThemeChangeListener); - } catch (IllegalArgumentException e) { - throw new AssertionError("Failed to unregister theme change listener!"); - } - - // Cleanup! - mThemeManager.unregisterThemeChangeListener(dummyThemeChangeListener); - } - - private ThemeManager.ThemeProcessingListener dummyThemeProcessingListener = - new ThemeManager.ThemeProcessingListener() { - @Override - public void onFinishedProcessing(String pkgName) { - - } - }; - - @SmallTest - public void testRegisterAndUnregisterThemeProcessingListener() { - // Exploit the illegalArgumentException thrown by registerThemeChangeListener to - // verify registration. - mThemeManager.registerProcessingListener(dummyThemeProcessingListener); - - try { - mThemeManager.registerProcessingListener(dummyThemeProcessingListener); - throw new AssertionError("Failed to register theme processing listener!"); - } catch (IllegalArgumentException e) { - // EXPECTED! - } - - // Inversely, exploit that the illegal argument exception isn't thrown - // if unregistering and reregistering - mThemeManager.unregisterProcessingListener(dummyThemeProcessingListener); - - try { - mThemeManager.registerProcessingListener(dummyThemeProcessingListener); - } catch (IllegalArgumentException e) { - throw new AssertionError("Failed to unregister theme change listener!"); - } - - // Cleanup! - mThemeManager.unregisterProcessingListener(dummyThemeProcessingListener); - } - - @SmallTest - public void testAddAndRemoveClient() { - // Exploit the illegalArgumentException thrown by addClient to verify registration. - mThemeManager.addClient(dummyThemeChangeListener); - - try { - mThemeManager.addClient(dummyThemeChangeListener); - throw new AssertionError("Failed to add client!"); - } catch (IllegalArgumentException e) { - // EXPECTED! - } - - // Inversely, exploit that the illegal argument exception isn't thrown - // if adding and removing - mThemeManager.removeClient(dummyThemeChangeListener); - - try { - mThemeManager.addClient(dummyThemeChangeListener); - } catch (IllegalArgumentException e) { - throw new AssertionError("Failed to remove client!"); - } - - // Cleanup! - mThemeManager.removeClient(dummyThemeChangeListener); - } - - @SmallTest - public void testOnClientPausedResumedAndDestroyed() { - // Exploit the illegalArgumentException thrown by addClient to verify registration. - mThemeManager.addClient(dummyThemeChangeListener); - - try { - mThemeManager.addClient(dummyThemeChangeListener); - throw new AssertionError("Failed to add client!"); - } catch (IllegalArgumentException e) { - // EXPECTED! - } - - // Inversely, exploit that the illegal argument exception isn't thrown - // if pausing and resuming - mThemeManager.onClientPaused(dummyThemeChangeListener); - - try { - mThemeManager.onClientResumed(dummyThemeChangeListener); - } catch (IllegalArgumentException e) { - throw new AssertionError("Failed to pause client!"); - } - - // Once again exploit the illegalArgumentException thrown by onClientResumed to verify - // the previous call to onClientResumed added the client back - try { - mThemeManager.onClientResumed(dummyThemeChangeListener); - throw new AssertionError("Failed to resume client!"); - } catch (IllegalArgumentException e) { - // EXPECTED! - } - - // Inversely, exploit that the illegal argument exception isn't thrown - // if destroying and adding - mThemeManager.onClientDestroyed(dummyThemeChangeListener); - - try { - mThemeManager.addClient(dummyThemeChangeListener); - } catch (IllegalArgumentException e) { - throw new AssertionError("Failed to destroy client!"); - } - - // Cleanup! - mThemeManager.removeClient(dummyThemeChangeListener); - } - - boolean actualRequestThemeChangeAsMapResponse = false; - @SmallTest - public void testRequestThemeChangeAsMapAndCallback() { - Map<String, String> expectedAppOverlayMap = new HashMap<>(); - final CountDownLatch signal = new CountDownLatch(COUNTDOWN); - - // Get the default theme package - final String defaultThemePkg = getDefaultThemePackageName(mContext); - - // Get the default theme components - final List<String> components = getSupportedComponentsForTheme(mContext, defaultThemePkg); - - for (String component : components) { - expectedAppOverlayMap.put(component, defaultThemePkg); - } - - mThemeManager.registerThemeChangeListener(new ThemeChangeListener() { - @Override - public void onProgress(int progress) { - - } - - @Override - public void onFinish(boolean isSuccess) { - actualRequestThemeChangeAsMapResponse = isSuccess; - mThemeManager.unregisterThemeChangeListener(this); - signal.countDown(); - } - }); - - mThemeManager.requestThemeChange(expectedAppOverlayMap); - - // Lock - try { - signal.await(); - } catch (InterruptedException e) { - throw new AssertionError(e); - } - - assertTrue(actualRequestThemeChangeAsMapResponse); - } - - boolean actualRequestThemeChangeAsStringListResponse = false; - @SmallTest - public void testRequestThemeChangeAsStringListAndCallback() { - final CountDownLatch signal = new CountDownLatch(COUNTDOWN); - - // Get the default theme package - final String defaultThemePkg = getDefaultThemePackageName(mContext); - - // Get the default theme components - final List<String> components = getSupportedComponentsForTheme(mContext, defaultThemePkg); - - mThemeManager.registerThemeChangeListener(new ThemeChangeListener() { - @Override - public void onProgress(int progress) { - - } - - @Override - public void onFinish(boolean isSuccess) { - actualRequestThemeChangeAsStringListResponse = isSuccess; - mThemeManager.unregisterThemeChangeListener(this); - signal.countDown(); - } - }); - - mThemeManager.requestThemeChange(defaultThemePkg, components); - - // Lock - try { - signal.await(); - } catch (InterruptedException e) { - throw new AssertionError(e); - } - - assertTrue(actualRequestThemeChangeAsStringListResponse); - } - - boolean actualRequestThemeChangeAsRequestResponse = false; - @SmallTest - public void testRequestThemeChangeAsRequestAndCallback() { - final CountDownLatch signal = new CountDownLatch(COUNTDOWN); - - // Get the default theme package - final String defaultThemePkg = getDefaultThemePackageName(mContext); - - ThemeChangeRequest request = new ThemeChangeRequest.Builder() - .setAlarm(defaultThemePkg) - .setNavBar(defaultThemePkg) - .setBootanimation(defaultThemePkg) - .setLockWallpaper(defaultThemePkg) - .setLiveLockScreen(defaultThemePkg) - .build(); - - mThemeManager.registerThemeChangeListener(new ThemeChangeListener() { - @Override - public void onProgress(int progress) { - - } - - @Override - public void onFinish(boolean isSuccess) { - actualRequestThemeChangeAsRequestResponse = isSuccess; - mThemeManager.unregisterThemeChangeListener(this); - signal.countDown(); - } - }); - - mThemeManager.requestThemeChange(request, true); - - // Lock - try { - signal.await(); - } catch (InterruptedException e) { - throw new AssertionError(e); - } - - assertTrue(actualRequestThemeChangeAsRequestResponse); - } - - @SmallTest - public void testGetLastThemeChangeRequestType() { - final CountDownLatch signal = new CountDownLatch(COUNTDOWN); - - // Get the default theme package - final String defaultThemePkg = getDefaultThemePackageName(mContext); - - ThemeChangeRequest request = new ThemeChangeRequest.Builder() - .setStatusBar(defaultThemePkg) - .setRequestType(ThemeChangeRequest.RequestType.USER_REQUEST_MIXNMATCH) - .build(); - - mThemeManager.registerThemeChangeListener(new ThemeChangeListener() { - @Override - public void onProgress(int progress) {} - - @Override - public void onFinish(boolean isSuccess) { - mThemeManager.unregisterThemeChangeListener(this); - signal.countDown(); - } - }); - - mThemeManager.requestThemeChange(request, true); - - // Lock - try { - signal.await(); - } catch (InterruptedException e) { - throw new AssertionError(e); - } - - assertEquals(ThemeChangeRequest.RequestType.USER_REQUEST_MIXNMATCH, - mThemeManager.getLastThemeChangeRequestType()); - } - - @SmallTest - public void testGetLastThemeChangeTime() { - final CountDownLatch signal = new CountDownLatch(COUNTDOWN); - - // Get the default theme package - final String defaultThemePkg = getDefaultThemePackageName(mContext); - - ThemeChangeRequest request = new ThemeChangeRequest.Builder() - .setStatusBar(defaultThemePkg) - .setRequestType(ThemeChangeRequest.RequestType.USER_REQUEST_MIXNMATCH) - .build(); - - mThemeManager.registerThemeChangeListener(new ThemeChangeListener() { - @Override - public void onProgress(int progress) {} - - @Override - public void onFinish(boolean isSuccess) { - mThemeManager.unregisterThemeChangeListener(this); - signal.countDown(); - } - }); - - final long preThemeChangeTime = System.currentTimeMillis(); - mThemeManager.requestThemeChange(request, true); - - // Lock - try { - signal.await(); - } catch (InterruptedException e) { - throw new AssertionError(e); - } - - final long postThemeChangeTime = System.currentTimeMillis(); - final long lastThemeChangeTime = mThemeManager.getLastThemeChangeTime(); - // lastThemeChangeTime should be between preThemeChangeTime and postThemeChangeTime - assertTrue(lastThemeChangeTime >= preThemeChangeTime); - assertTrue(lastThemeChangeTime <= postThemeChangeTime); - } - - @SmallTest - public void testIsThemeApplying() { - boolean themeApplying; - final CountDownLatch signal = new CountDownLatch(COUNTDOWN); - - // Get the default theme package - final String defaultThemePkg = getDefaultThemePackageName(mContext); - - ThemeChangeRequest request = new ThemeChangeRequest.Builder() - .setStatusBar(defaultThemePkg) - .setRequestType(ThemeChangeRequest.RequestType.USER_REQUEST_MIXNMATCH) - .build(); - - mThemeManager.registerThemeChangeListener(new ThemeChangeListener() { - @Override - public void onProgress(int progress) { - signal.countDown(); - } - - @Override - public void onFinish(boolean isSuccess) { - mThemeManager.unregisterThemeChangeListener(this); - } - }); - - mThemeManager.requestThemeChange(request, true); - - // Lock - try { - signal.await(); - themeApplying = mThemeManager.isThemeApplying(); - } catch (InterruptedException e) { - throw new AssertionError(e); - } - - assertTrue(themeApplying); - } - - int progress = INVALID_PROGRESS; - @SmallTest - public void testGetProgress() { - final CountDownLatch signal = new CountDownLatch(COUNTDOWN); - - // Get the default theme package - final String defaultThemePkg = getDefaultThemePackageName(mContext); - - ThemeChangeRequest request = new ThemeChangeRequest.Builder() - .setStatusBar(defaultThemePkg) - .setRequestType(ThemeChangeRequest.RequestType.USER_REQUEST_MIXNMATCH) - .build(); - - mThemeManager.registerThemeChangeListener(new ThemeChangeListener() { - @Override - public void onProgress(int p) { - if (progress == INVALID_PROGRESS) progress = mThemeManager.getProgress(); - } - - @Override - public void onFinish(boolean isSuccess) { - mThemeManager.unregisterThemeChangeListener(this); - signal.countDown(); - } - }); - - mThemeManager.requestThemeChange(request, true); - - // Lock - try { - signal.await(); - } catch (InterruptedException e) { - throw new AssertionError(e); - } - - // Verify that progress was updating during the theme change - assertTrue(progress != INVALID_PROGRESS); - - // Verify that getProgress returns 0 now that the theme change has finished - assertEquals(0, mThemeManager.getProgress()); - } - - @SmallTest - public void testThemeProcessing() { - // Get the default theme package - final String defaultThemePkg = getDefaultThemePackageName(mContext); - - ThemeManager mockedThemeManager = Mockito.mock(ThemeManager.class); - - Mockito.doReturn(true) - .when(mockedThemeManager) - .processThemeResources(Mockito.anyString()); - - Mockito.doReturn(true) - .when(mockedThemeManager) - .isThemeBeingProcessed(Mockito.anyString()); - - assertTrue(mockedThemeManager.processThemeResources(defaultThemePkg)); - assertTrue(mockedThemeManager.isThemeBeingProcessed(defaultThemePkg)); - } - - private boolean verifyThemeAppliedFromPackageForRow(String packageName, String expectedPackage, - boolean systemTheme) { - boolean verified = TextUtils.isEmpty(expectedPackage) || - TextUtils.equals(packageName, expectedPackage); - - if (systemTheme && !verified) { - verified = TextUtils.equals(expectedPackage, ThemeConfig.SYSTEM_DEFAULT); - } - - return verified; - } - - private String getPackageNameForKey(Context context, String key) { - final ContentResolver cr = context.getContentResolver(); - String[] projection = {ThemesContract.MixnMatchColumns.COL_VALUE}; - String selection = ThemesContract.MixnMatchColumns.COL_KEY + "=?"; - String[] selectionArgs = {key}; - Cursor c = cr.query(ThemesContract.MixnMatchColumns.CONTENT_URI, projection, selection, - selectionArgs, null, null); - if (c != null) { - try { - if (c.moveToFirst()) { - return c.getString(0); - } - } finally { - c.close(); - } - } - return null; - } - - private static String getDefaultThemePackageName(Context context) { - final String defaultThemePkg = LineageSettings.Secure.getString(context.getContentResolver(), - LineageSettings.Secure.DEFAULT_THEME_PACKAGE); - if (!TextUtils.isEmpty(defaultThemePkg)) { - PackageManager pm = context.getPackageManager(); - try { - if (pm.getPackageInfo(defaultThemePkg, 0) != null) { - return defaultThemePkg; - } - } catch (PackageManager.NameNotFoundException e) { - // doesn't exist so system will be default - Log.w(TAG, "Default theme " + defaultThemePkg + " not found", e); - } - } - - return ThemeConfig.SYSTEM_DEFAULT; - } - - private static List<String> getSupportedComponentsForTheme(Context context, - String themePkgName) { - List<String> supportedComponents = new ArrayList<>(); - - String selection = ThemesContract.ThemesColumns.PKG_NAME + "= ?"; - String[] selectionArgs = new String[]{ themePkgName }; - Cursor c = context.getContentResolver().query(ThemesContract.ThemesColumns.CONTENT_URI, - null, selection, selectionArgs, null); - - if (c != null) { - try { - if (c.moveToFirst()) { - for (String component : ALL_THEME_COMPONENTS) { - int index = c.getColumnIndex(component); - if (c.getInt(index) == 1) { - supportedComponents.add(component); - } - } - } - } finally { - c.close(); - } - } - return supportedComponents; - } -} diff --git a/tests/src/org/lineageos/tests/themes/unit/ThemesContractTests.java b/tests/src/org/lineageos/tests/themes/unit/ThemesContractTests.java deleted file mode 100644 index 480870be..00000000 --- a/tests/src/org/lineageos/tests/themes/unit/ThemesContractTests.java +++ /dev/null @@ -1,91 +0,0 @@ -/** - * Copyright (C) 2016 The CyanogenMod Project - * - * 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. - */ - -package org.lineageos.tests.themes.unit; - -import android.test.AndroidTestCase; -import android.test.suitebuilder.annotation.SmallTest; -import lineageos.providers.ThemesContract; - -public class ThemesContractTests extends AndroidTestCase { - private static final String TAG = ThemesContract.class.getSimpleName(); - - public static final String[] COMPONENTS = { - ThemesContract.ThemesColumns.MODIFIES_LAUNCHER, - ThemesContract.ThemesColumns.MODIFIES_LOCKSCREEN, - ThemesContract.ThemesColumns.MODIFIES_ICONS, - ThemesContract.ThemesColumns.MODIFIES_STATUS_BAR, - ThemesContract.ThemesColumns.MODIFIES_BOOT_ANIM, - ThemesContract.ThemesColumns.MODIFIES_FONTS, - ThemesContract.ThemesColumns.MODIFIES_NOTIFICATIONS, - ThemesContract.ThemesColumns.MODIFIES_RINGTONES, - ThemesContract.ThemesColumns.MODIFIES_ALARMS, - ThemesContract.ThemesColumns.MODIFIES_OVERLAYS, - ThemesContract.ThemesColumns.MODIFIES_NAVIGATION_BAR, - ThemesContract.ThemesColumns.MODIFIES_LIVE_LOCK_SCREEN - }; - - public static final String[] URIS = { - ThemesContract.ThemesColumns.HOMESCREEN_URI, - ThemesContract.ThemesColumns.LOCKSCREEN_URI, - ThemesContract.ThemesColumns.ICON_URI, - ThemesContract.ThemesColumns.STATUSBAR_URI, - ThemesContract.ThemesColumns.BOOT_ANIM_URI, - ThemesContract.ThemesColumns.FONT_URI, - null, - null, - null, - ThemesContract.ThemesColumns.OVERLAYS_URI, - null, - null, - }; - - @SmallTest - public void testComponentToImageColNameTransformation() { - for (int i = 0; i < ThemesContract.MixnMatchColumns.ROWS.length; i++) { - if (URIS[i] != null) { - assertEquals(URIS[i], - ThemesContract.MixnMatchColumns.componentToImageColName( - ThemesContract.MixnMatchColumns.ROWS[i])); - } else { - try { - ThemesContract.MixnMatchColumns.componentToImageColName( - ThemesContract.MixnMatchColumns.ROWS[i]); - throw new AssertionError("Key " + ThemesContract.MixnMatchColumns.ROWS[i] - + " should throw IllegalArgumentException"); - } catch (IllegalArgumentException e) { - // Expected - } - } - } - } - - @SmallTest - public void testComponentToMixNMatchKeyTransformation() { - for (int i = 0; i < COMPONENTS.length; i++) { - assertEquals(ThemesContract.MixnMatchColumns.componentToMixNMatchKey( - COMPONENTS[i]) , ThemesContract.MixnMatchColumns.ROWS[i]); - } - } - - @SmallTest - public void testmixNMatchKeyToComponentTransformation() { - for (int i = 0; i < ThemesContract.MixnMatchColumns.ROWS.length; i++) { - assertEquals(ThemesContract.MixnMatchColumns.mixNMatchKeyToComponent( - ThemesContract.MixnMatchColumns.ROWS[i]) , COMPONENTS[i]); - } - } -} diff --git a/tests/src/org/lineageos/tests/versioning/unit/apiv5/ApiV5PriorReleaseInterfaces.java b/tests/src/org/lineageos/tests/versioning/unit/apiv5/ApiV5PriorReleaseInterfaces.java index 158b0ff9..7adefe08 100644 --- a/tests/src/org/lineageos/tests/versioning/unit/apiv5/ApiV5PriorReleaseInterfaces.java +++ b/tests/src/org/lineageos/tests/versioning/unit/apiv5/ApiV5PriorReleaseInterfaces.java @@ -105,43 +105,6 @@ public class ApiV5PriorReleaseInterfaces { lineageAudioService.put("listAudioSessions", 1); } - //ThemeChangeListener Aidl (IThemeChangeListener) - static { - Map<String, Integer> themeChangeListener = - getInternalInterfaceMap("IThemeChangeListener"); - //ELDERBERRY BEGIN - themeChangeListener.put("onProgress", 1); - themeChangeListener.put("onFinish", 2); - } - - //ThemeProcessingListener Aidl (IThemeProcessingListener) - static { - Map<String, Integer> themeChangeListener = - getInternalInterfaceMap("IThemeProcessingListener"); - //ELDERBERRY BEGIN - themeChangeListener.put("onFinishedProcessing", 1); - } - - //ThemeManager Aidl (IThemeService) - static { - Map<String, Integer> themes = - getInternalInterfaceMap("IThemeService"); - //ELDERBERRY BEGIN - themes.put("requestThemeChangeUpdates", 1); - themes.put("removeUpdates ", 2); - themes.put("requestThemeChange", 3); - themes.put("applyDefaultTheme", 4); - themes.put("isThemeApplying", 5); - themes.put("getProgress", 6); - themes.put("processThemeResources", 7); - themes.put("isThemeBeingProcessed", 8); - themes.put("registerThemeProcessingListener", 9); - themes.put("unregisterThemeProcessingListener", 10); - themes.put("rebuildResourceCache", 11); - themes.put("getLastThemeChangeTime", 12); - themes.put("getLastThemeChangeRequestType", 13); - } - //LineageWeatherManager Aidl (ILineageWeatherManager) static { Map<String, Integer> ilineageWeatherManager = |