[prjkt.io] nicholaschum:
Public release 983

With this release, we have listened and heard to many people about the March security update and have worked around it by providing users with more information about how to properly load up overlays perfectly on ROMs with this security patch.

For Samsung Oreo users, your compilation of overlays WILL be faster than normal. That's because we've decided to tap into Samsung's overlay permission and thus, you will not have your overlays reverted after a reboot (e.g. SystemUI). But doing so means we can no longer measure the time that overlays take to install as overlays are now offloaded to the Samsung Theme Package Processor and thus, all intent receivers are rendered useless.

If your overlays appear PINK -> They mean it needs a reboot to take effect!

If your overlays appear BLUE -> They mean ANOTHER theme has an Enabled + Installed overlay. For example if you installed Chrome from Swift Black and you open up Quetzal, it will show up in Blue in Quetzal, but Green in Swift Black.

We also introduced the ActionBar Scroll Up feature in places including:

- Main Theme Screen (MainActivity -> ThemeFragment)

- Overlay Manager Screen (MainActivity -> ManagerFragment)

- Settings (MainActivity -> SettingsFragment)

- Theme Overlay Manager (InformationActivity -> Overlays)

- Theme Wallpapers (InformationActivity -> Wallpapers)

LiteMode: If you are not fond of the hero image taking up like 30% of your screen when opening a theme, enabling Lite Mode in Settings will open themes without that image, as well as reducing some animations for slower devices.

SysServ Crashes? If you experience any crashes on Substratum Service mode, your ROM commits needs to be updated/repicked! We merged all our SysServ patches already and thus, some ROMs may have missed one patchset. Not to fret, we have informed teams that have outdated sources but here's the most up to date link that needs changing: https://substratum.review/c/SubstratumResources/platform_frameworks_base/+/448

Translators and contributors now show up when clicking Substratum version in Settings! Translators are now parsing CrowdIn's CSV file and will rank based on your contribution on CrowdIn! If you were before the CrowdIn transition, don't worry, we still love you guys! Just verify and translate more words and we'll update the file from time to time!

News about Android P? We have news, good and bad. But that comes later. Hopefully you just remember you're still on Android Oreo!

Full changelog (chronologically):

Public release 983

InformationActivity: In Lite Mode, adjust the title text accordingly

Samsung performance update 982

Hotfix release 981

Systems: Adjust for Samsung devices > API24 (aka. 25)

Public release 980

OverlaysAdapter: Cache the state color to speed up scrolling

ShowcaseActivity: Add the toolbar scroll feature here as well

SubstratumUX: Introduce "tap actionbar to scroll up" feature

OverlaysAdapter: Add support of blue state for Samsung users

LiteMode: Affect the fade-from-grayscale animation on LiteMode

SettingsFragment: Change launchActivityUrl method for team links

InformationActivity: In Lite Mode, completely lock toolbar expansion

OverlaysAdapter: Introduce a new blue state

SettingsFragment: Add Lite Mode and rewrite the Settings fragment

Update dependencies

Internal release 970

AndromedaBinderService/Substratum: End binder services gracefully

SettingsFragment: Update App Theme text on selection

Fix up strings for menu state and app theme

SettingsFragment: Add OK button to all contributor dialogs

ManagerFragment: Show toast on overlay state change

TeamFragment: Deprecate fragment and move to About Substratum

TranslationDialog: Add some padding

ManagerFragment: Reorganize and assign a systematic format for sheet fab

SettingsFragment: Brand new way of showing translators!

ThemeManager: Add back listOverlay method using direct interface on nougat

MainActivity: Expose and assign the background of bottom tab to drawable

ManagerFragment: Dynamically change text of sorting overlay state

Substratum: Samsung checker should exclude Nougat from listThemes

OverlaysManager: Only show the pink state dialog on Oreo!

Merge pull request #173 from folgore95/patch-2

Update strings.xml

Better explanation about new samsung overlays compiling

Update strings for Samsung Oreo refreshing of list manually

Substratum: Samsung checker can also fallback to listThemes(context)

Resources: Add Samsung software update to permission blacklist

OverlaysManager: Reorganize pink title explanation dialog

ManagerFragment: Allow user to sort by overlay enabled/disabled state

SamsungIntegration: Change Samsung package check code

OverlaysManager: Adapt the previous commit for Samsung users too

OverlaysManager: Alert if user is installing overlay on stock March

Resources: Add Samsung Voice Recorder to permission blacklist

CompilerCommands: Samsung permission must be assigned statically

OverlaysManager: Clean up and refactor logic

OverlaysAdapter: Refresh and allow non-Samsung users with pink state

Readme: Remove interfacer from readme

SettingsFragment: Don't create indefinitely open snackbars

Packages: Clean up isPackageInstalled function

OverlaysAdapter/Item: Sanitize and clean up the logic used

VariantAdapter: You must cast full class for view binding

OverlaysAdapter: Complete rewrite

MainActivity: Adjust layouts for Andromeda button

AndromedaBinderService: Do not show the disconnected notification

Andromeda: Fix crashes on andromeda update, also terminate subs

SamsungIntegration: Also allow fwk overlays to be invoked for uninstall

SamsungIntegration: Add transition helper from Nougat to Oreo

MainActivity: On error dialog, show a more descriptive result

Full translation import

Fix build for Android Studio 3.2 Canary 10

AndromedaRebase: Update the strings to say something else for debug

AndromedaRebase: Prepare for Andromeda rebase

build: Update dependencies

ThemeManager: Don't use cached list on andromeda listOverlay

MainActivity: Add new activity name for launching andromeda

SoundUtils: Don't restart ui after applying sounds on substratum service

Full translation import

OverlaysManager: If Oreo and Samsung, do not wait for intent response

Clean up, refactor and optimize imports

InformationActivity: Enable Samsung Package Checker on Oreo

SamsungIntegration: Re-add overlay component permission for 7.1.1+

Merge pull request #167 from alamo18/dev

MainActivity: bottomBar duplicate reference Viewbinding already did the job

util: helpers: FileDownloader: Fit overall code style Don't declare a variable just to store the return

Gradle && firebase update

ManagerItem: Use overlay's version instead of live version

CompilerCommands: isStatic is an Oreo OMS quirk

CompilerCommands: Add isStatic false flag to manifest

SettingsFragment: Speed up loading for Andromeda

Systems: Optimize Samsung device checkers

XiaomiIntegration: Show warning to enable extra permissions

ManagerFragment: Restart SystemUI should not show on Andromeda

Some boolean logic fixes from previous commits

MainActivity: Dialog layout changes

LocaleHelper: Deprecate old locale changer style

Full translation import

Packages: getPackageName(): If Samsung has an uninstalled overlay, spit packageName

Clean up and reformat all res/ files

AndromedaOffline: Introduce a way to uninstall overlays offline

ShowcaseActivity: Remove custom animations as well

ThemesListMenu: Recovery menu item should take precedence

References: Disable Samsung overlay permission

CompilerCommands: Reorganize permission for Samsung

References: Debug substratum APKs should distribute Samsung overlay perm

ValidatorDialog: Re-enable for custom ROM devs

MainActivity: Remove FragmentTransaction animation

References: Fix boolean logic in isServiceRunning

Clean up and reformat

ThemeItem: Introduce a dynamic image resizer to prevent OOMs

De-localize the animation files for fragments

Broadcasts: Samsung should get OverlayFound as well

MainActivity: On fragment switch, unload fragment AsyncTasks

OverlaysManager: Insert delay when installing snowflake overlays

SubstratumCleanup: Fix relevant lint issues and remove unused resources

SubstratumCleanup: Do ma thang

SubstratumFloatInterface: Correctly deal with potential NPE

Systems: Remove NonNull annotation from checkOMS method

Clean-up and reformat

Internal release 960

Merge branch 'databinding' into dev

SamsungOreoIntegration: New overlay pink state for being "stuck"

ThemeManager: This is needed here too

SubstratumCleanup: Remove unused resources

Substratum: Deprecate Butterknife

ProfileFragment: Migrate to Databinding

SettingsFragment: Don't unnecessarily create Handler objects

ThemeAdapter: Migrate sheet dialog to viewBinding

ThemeAdapter: Migrate to databinding and deprecate gapps config

VariantAdapter: Cleanup and migrate to Databinding

Internal release 955