[Galaxy S II Android Development] Markox89:
Some thoughts...

...please, read them before rushing toward the new build :)

About the SystemUI memory leak and crashes: since the beginning of the week I'm working with the CM Team on Gerrit, trying to understand what's the source of these issues, how to reproduce them and how to fix them: all the clues are pointing to the new Theme Engine; sadly, removing the apks related to it doesn't solve any issue, because they seem related to the changes made deeply in the OS to support it.

So, for now, the best solution found was to use this patch, and to revert one of the parts of the new Theme Engine.

Now, what to do with this week's build was ultimately my call, so I made my choice: considering that everyone uses SystemUI, and not everyone uses the Theme Engine, I took the risk. I've used in the build the patches named above, after testing them for couple of days with positive results.

Ok, bla bla bla, but this means what? Ok, I get you, I'm writing too much :p

The point is: with these patch (still unmerged into the official nightlies) I've been unable to reproduce Status Bar or SystemUI freezes/lockups/crashes. Though, the Theme Engine may not work properly; I said

may

, it can work as well, but since I don't use it I was unable to test it.

In the end this was my call: apply a set of patches that in the past few days has made me unable to reproduce the infamous issues and take the risk of breaking the Theme Engine. Obviously you can disagree with me, but I hope you'll understand my point of view and respect my decision ;)

In addition, if you report back it will be easier for the Team to fix once and for all these issues and restoring a full functional Theme Engine; I'll let them hear your reports, so don't be shy :highfive:

About the md5sum: I stopped uploading md5sum as a separate text file. That's because AndroidFileHost already calculates it, and before going public I always check it matches the one on my building machine. So, even if I stop saying it, remember to check md5sum before you flash a new build :D

And now the part that you were really waiting for... :p :p :p

I9100 20140515 is UP! :cool:

Changelog:

Test for systemui lockup and excessive memory usage --> Adresses the SystemUI memory leak and crashes

Revert New Theme Engine [3/6] --> Adresses the SystemUI memory leak and crashes

FFmpegExtractor: don't print list of supported formats --> CyanogenMod/android_external_stagefright-plugins

stagefright: Fix playback for mkv files with lacing --> CyanogenMod/android_frameworks_av

FFmpegExtractor: set proper mimetype for VP8/9 --> CyanogenMod/android_external_stagefright-plugins

FFmpegExtractor: mark VP9 as supported --> CyanogenMod/android_external_stagefright-plugins

FFmpegExtractor: add mp3 to supported list --> CyanogenMod/android_external_stagefright-plugins

National Roaming: Allow T-Mobile AT (MNC03) to roam on 3 AT (MNC10) in Austria --> CyanogenMod/android_frameworks_base

Fix hidden "Remove" and "App info" buttons in landscape --> CyanogenMod/android_packages_apps_Trebuchet

Add mimimum width of the buttonPanel layout --> CyanogenMod/android_packages_apps_Stk

Show list if package was uninstalled while launching --> CyanogenMod/android_packages_apps_ThemeChooser

Animate boot animation using double buffered bitmaps --> CyanogenMod/android_packages_apps_ThemeChooser

Fix NPE if themeContext is null --> CyanogenMod/android_packages_providers_ThemesProvider

WallpaperPicker: Destroy cropview to avoid leaks --> CyanogenMod/android_frameworks_base

Trebuchet: Destroy cropview to avoid leaks in picker --> CyanogenMod/android_packages_apps_Trebuchet

Screencast: Fix another camelcase string --> CyanogenMod/android_packages_apps_Screencast-resources

camera2: fix pref_camera_picturesize_entryvalues values order --> CyanogenMod/android_packages_apps_Camera2

AudioFX: Move CM strings to cm_strings --> CyanogenMod/android_packages_apps_AudioFX-resources

VoiceWakeup: Update resources --> CyanogenMod/android_packages_apps_VoiceWakeup-resources

Screencast: Update resources --> CyanogenMod/android_packages_apps_Screencast-resources

torch: toggle on/off once --> CyanogenMod/android_packages_apps_Torch

Make sure mFullScreenScale is non-zero before animating --> CyanogenMod/android_packages_apps_Torch

Add missing mdpi, hdpi, xhdpi drawables for new theme engine --> CyanogenMod/android_packages_apps_Settings

Provide alternative applications --> CyanogenMod/android_packages_apps_ThemeChooser

CM11 Themes: remove handleThemeConfigChanges --> CyanogenMod/android_frameworks_base

GalleryNext: Add missing \u2026 --> CyanogenMod/android_packages_apps_GalleryNext-resources

Add additional WAV types to Stagefright supported list --> CyanogenMod/android_external_stagefright-plugins

FFmpegExtractor: ignore fake album art MJPEG streams --> CyanogenMod/android_external_stagefright-plugins

ThemeStore: Update resources --> CyanogenMod/android_packages_apps_ThemeStore-resources

GalleryNext: Update resources --> CyanogenMod/android_packages_apps_GalleryNext-resources

n_tty: Fix n_tty_write crash when echoing in raw mode --> CyanogenMod/android_kernel_samsung_smdk4412

Consistently use start/end instead of left/right layout properties --> CyanogenMod/android_packages_apps_Settings

make settings menu themable --> CyanogenMod/android_packages_apps_Camera2

Fix style previews scaling in ComponentBrowseFragment --> CyanogenMod/android_packages_apps_ThemeChooser

Make theme title width match_parent --> CyanogenMod/android_packages_apps_ThemeChooser

Allow 3 AT (mnc05) to roam on T-Mobile in Austria --> CyanogenMod/android_frameworks_base

Fix Memory leaks on Browser application --> CyanogenMod/android_packages_apps_Browser

Revert "telephony: set additional audioparameters for incall audio (1/2)" --> CyanogenMod/android_frameworks_base

Avoid SystemUI crash due to NPE --> CyanogenMod/android_frameworks_base

Set ActionMode title to the number of selected files --> CyanogenMod/android_frameworks_base

Stop previous TaskStack worker --> CyanogenMod/android_packages_apps_Mms

Fix NullPointerException issue when user change --> CyanogenMod/android_packages_apps_Settings

Avoid ConversationList/ComposeMessage activity leaks --> CyanogenMod/android_packages_apps_Mms

mc1n2: Allow swapping of microphone ADC channels --> CyanogenMod/android_kernel_samsung_smdk4412

make LinearColorBar themeable --> CyanogenMod/android_packages_apps_Settings

AudioService: fix safe volume enforced even when disabled --> CyanogenMod/android_frameworks_base

Include alarms in mixnmatch --> CyanogenMod/android_packages_providers_ThemesProvider

Fix Spelling of Contributor name --> CyanogenMod/android_packages_apps_CMWallpapers

install: Ditch the generic error --> CyanogenMod/android_bootable_recovery-cm

cm: policy for ipv6 tethering --> CyanogenMod/android_vendor_cm

qsap: Don't log sensitive information --> CyanogenMod/android_system_qcom

libstagefright: Fix crash while setting buffer size --> CyanogenMod/android_frameworks_av

libstagefright: Add MPEG2 Codec support --> CyanogenMod/android_frameworks_av

libeffect: Fix enabled effect count calculation error --> CyanogenMod/android_frameworks_av

libmedia: Add timelapse profiles for 4k sizes --> CyanogenMod/android_frameworks_av

DataSource: Remove global variables in DataSource related to sniff --> CyanogenMod/android_frameworks_av

CamcorderProfile: Add 4k timelapse encoder constants --> CyanogenMod/android_frameworks_base

MSim: always enable activity disabler --> CyanogenMod/android_packages_services_Telephony

settings: Remove "mobile plan" --> CyanogenMod/android_packages_apps_Settings

create /data/media directory after internal storage is wiped --> CyanogenMod/android_bootable_recovery

releasetools: bring back boot.img handling --> CyanogenMod/android_build

Settings: preferences use keys, not ids --> CyanogenMod/android_packages_apps_Settings

build: use /usr/bin/env to call python --> CyanogenMod/android_build

Camera2: Fix default slow shutter option --> CyanogenMod/android_packages_apps_Camera2

Camera2: Tweak some strings --> CyanogenMod/android_packages_apps_Camera2

Add AutoRotate as Default tile --> CyanogenMod/android_frameworks_base

Themes: List ThemeSettings as a valid fragment --> CyanogenMod/android_packages_apps_Settings

fix READ_SETTINGS/WRITE_SETTINGS to be "dangerous" --> CyanogenMod/android_packages_apps_Trebuchet

dedupe: backup & restore selinux contexts --> CyanogenMod/android_bootable_recovery

Keep 'show log' on screen until user dismisses it --> CyanogenMod/android_bootable_recovery

sr: Add support for f2fs formated data partition --> CyanogenMod/android_bootable_recovery-cm

sr: Fix includes for burecovery --> CyanogenMod/android_bootable_recovery-cm

settings: Various cleanups --> CyanogenMod/android_packages_apps_Settings

Fix name of default --> CyanogenMod/android_packages_apps_Trebuchet

Remove me from contributors --> CyanogenMod/android_vendor_cm

releasetools: Fix whitespace error for INSTALLED_DTIMAGE_TARGET --> CyanogenMod/android_build

rename the custom lockscreen state action --> CyanogenMod/android_frameworks_base

releasetools: Properly handle boot images that use dt --> CyanogenMod/android_build

Store the base64 release key in the OTA zips --> CyanogenMod/android_build

tools: getb64key - print the base64 version of a PEM public key file --> CyanogenMod/android_build

Add wallpaper pickers to seperate package [1/2] --> CyanogenMod/android_frameworks_base

Add wallpaper pickers to seperate package [2/2] --> CyanogenMod/android_packages_apps_Settings

sr: Honor recovery variant --> CyanogenMod/android_bootable_recovery-cm

manifest: Add simplerecovery (bootable/recovery-cm) --> CyanogenMod/android

build: core: Parameterize recovery with a variant --> CyanogenMod/android_build

cwm: Honor recovery variant --> CyanogenMod/android_bootable_recovery

MSIM: Update icon for Multi Sim Settings category --> CyanogenMod/android_packages_apps_Settings

MSim Settings: Update UI/UX with user friendly strings --> CyanogenMod/android_packages_apps_Settings

New Theme Chooser UI --> CyanogenMod/android

cm-11 themes: Build new ThemesProvider --> CyanogenMod/android_vendor_cm

Theme Chooser: Initial Contribution [2/2] --> CyanogenMod/android_packages_providers_ThemesProvider

Theme Chooser: Initial Contribution [1/2] --> CyanogenMod/android_packages_apps_ThemeChooser

Trebuchet: Only reset overscrolled child --> CyanogenMod/android_packages_apps_Trebuchet

Revert "Trebuchet: Fix overscroll overlay issue" --> CyanogenMod/android_packages_apps_Trebuchet

Set themes to install internal only --> CyanogenMod/android_frameworks_base

dalvik: Disable loop hoisting optimization on perf builds --> CyanogenMod/android_dalvik

P.S.

The build is in sync with today's nightly, with the obvious exception of the two patches named above :good: