The smoothest experience i've ever had on any android device, even smoother then AOSP, so locked liquid smooth that it made iPhone4/iOS fan boys jaws drop, inherently it's the excellent work of HTC engineers and their coding skills, sadly crippled due to the superficial focus of the HTC's marketing
All sense 3.x ROM's have a smoothness problem during page scroll, its always eratic and never locked in smoothness, this is caused by HTC's 3D widgets taking their toll on the GPU especially when populated with data
However if you press home and scroll back to the default screen you notice all the widgets gets frozen/flattened and scrolls back at liquid locked 60fps smooth, You will also notice that the 3D carousel home screens are seen in the background, this mode is called QuickScroll
What these mods will do is invoke QuickScroll during normal page scroll and eliminate frame rate issues caused by the 3D widgets, its available in two flavors:
Super Smooth Rosie:
This will keep the 3D widgets in the intial screen you begin scrolling from and freeze/flattens all the other pages until you stop scrolling
It will satisfy those who don't want to completely lose the 3D widgets
There might still be a very slight frame rate drop during the initial 3D flip depending on the complexity of the widgets.
This mod hacks the FxWorkspace.smali file
Ultra Smooth Rosie:
This mod goes even further by completely disabling 3D layered widgets by flattening and freezing all homescreens during scroll
The homescreens will still rotate in 3D space, only flattened
Liquid smooth locked 60FPS!
This mod hacks both the FxWorkspace.smali and FxWorkspaceClient.smali files v1.1 Sticky highlight fix: Fixed desktop icons' sticky highlight by hacking Rosie_shortcut.m10 and reducing the fade effect from 500ms to 5ms. This will only fix the desktop icons highlight so its a lot less annoying but will not fix widget buttons and icons inside folders
Funny Bugs: ultra smooth has few funny bugs, for example when going to personalize menu then back to the desktop you will see the widgets snap back into position, also certain times when you exit an app by pressing home you might see the homescreen tilting on its own similar to the sensor effect or some homescreen pages disappear while scrolling in one direction, also these bugs are specific to ultra smooth version and occur rarely, non are hamrless and they go away when you scroll again, small price to pay for locked 60fps! super smooth version is bugs free.
THIS MOD WILL SIMPLY REPLACE YOUR ROSIE.APK SO BACKUP FIRST! no need for wipe and you can flash them over each other
Remember this mod or the supercharger script will not show its goods if your ROM is freshly installed and still didn't cache and settle, caching needs at least 24 hours of use to settle
Starting with RCMix3D Runny v3.1 and later, both mods are included under RCtweaks>Rosie Options>Enable QuickScroll>Semi 2D/3D (super smooth) or All 2D (ultra smooth)
Boths mods are also included in Virtuous Affinity starting v1.46 under Virtuous tweaks, starting with Affinity 1.48 ultra v1.1 is included
Warnings
This will only work on ROMs based on the ruu file number included in the zip filename, therefore you will lose any mod applied to rosie, such as transparent app drawer or themes, you can ask forum members to provide an updated version of these mods or you can search in this thread many members are posting their version of this mod, also note if you ever uninstalled and restored the sense launcher through Titanium backup this zip file won't work, since TB restores the launcher to system/app/com.htc.launcher.apk, so you will have to unzip, rename and manually push the file.
Donations
It took me over 10 days of work, backtracking through the smali Rosie code, endless trying and testing, there was no global variable for this setting so i kept trying until i found out how to control the scrolling behavior with minimal code manipulation, so if this mod totally rocked your world or made your own ROM better, please consider donating, it will help encourage my future work and help the wifey in forgiving me
Thank you for donating:
- Patrics83
- preacher65
- naxuu
- lupipe
Guide - How to apply this hack into any 3.x Rosie.apk
First please note im not responsible for any hell this guide might cause, i also can't support your pc if any of the tools below didn't work for you
Extracting & repacking classes
- Download Backsmali pack and extract to a folder of your choice
- Copy your stock Rosie.apk to the same folder
- use 1-UnpackClassoutFromRosie.apk.bat file is provided to extract classout folder from classes.dex inside Rosie.apk
- Mod the .smali files using notepad++
- Once you are done modding use 2-RepakClassout.bat to repack the classes.dex file
- rename Rosie.apk to Rosie.zip and replace the classes.dex file using winrar etc
- rename back to Rosie.apk
- Done
Modding the .smali files
Keep in mind it has been so far tested with DHD sense 3.0 and Runny sense 3.5, code is always being improved by HTC so it might differ from base to base
Be careful with what you are doing, scripting knowledge will help you, any extra space can fail the compiling process
Now once your the classout folder is extracted from your Rosie.apk
Go to the decompiled folder classout\com\htc\android\rosie\home\fxcontrol locate the FxWorkSpace.smali and FxWorkspaceClient.smali files
Applying Super Smooth Mod - FxWorkspace.smali
{update: previous onBeginFling() addition was removed since it's not needed}
Open the FxWorkspace.smali file with NotePad++ and Locate .method public onBeginScroll(ZII)V
Scrolldown to the first occurring iput-boolean v0, p0, Lcom/htc/android/rosie/home/fxcontrol/FxWorkspace;->mIsScrolling:Z
For Runny it will look like this iput-boolean v2, p0, Lcom/htc/android/rosie/home/fxcontrol/FxWorkspace;->mIsScrolling:Z
Add the following code below it
here is how it should look, the grey lines are the added ones
Applying Ultra Smooth Mod - FxWorkspace.smali + FxWorkspaceClient.smali
In addition to the above, open the FxWorkspaceClient.smali file with NotePad++ and locate .method public changeScreensVisibility(ZIIFF)V
Scroll down to the first occurring iget-boolean v3, p0, Lcom/htc/android/rosie/home/fxcontrol/FxWorkspaceClient;->mQuickScrolling:Z
Change if-nez v3, :cond_1 to
Code:
if-nez v3, :cond_9
Scroll down to goto :goto_0 and add the following code below it:
Be careful this methoad contains very similar lines, since it has a condition for non portrait devices, here is how it should look like, grey lines are modded and added
Fixing Ultra's sticky press_state icon highlight - Rosie_shortcut.m10
Only problem with Ultra, it sometimes freezes homescreen's so quickly before the button state highlight fades out, the highlight will continue its fade out once you stop scrolling. To fix this we need to reduce the fade out duration of button state pressed from 500ms to 5ms, in Sense 3.x homescreens' shortcut icons are controlled by Rosie_shortcut.m10 while the icons inside the drawer and even inside desktop folders are still controlled by ordinary Android's grid_selector.xml! This m10 hack will only fix the desktop shortcut icons.
You can easily apply this fix to any Rosie.apk containing v1.0 ultra smooth, simply load Rosie.apk file using the M10Editor and follow the steps above
Using M10 Editor, load the Rosie_shortcut.m10 file, click on the m10 files tab and then double click on the following file Rosie_shortcut.m10, it will ask you to decompile choose yes, now go to the Editor tab, expand all the way to: Rosie_shortcut.m>0x7c8bed89>0x0dc10c5e>_Shortcut>b utton.shortcut>pressed_application_background. click on pressed_application_background. Then click on Unkown Properties: 0x7c9663eb = 500 (Float) in the input box above change 500 to 5 don't go less then 2ms otherwise the highlight will stop working properly, once your done go back to start tab and hit save
Now push the signed file from recovery using adb push Rosie.apk /system/app, you might need to mount /system first or mod one of my zip files using Rom Cleaner
just installed and rebooting now, will provide feedback!
thank you very much!
EDIT: Woowwwwwwwww!!!!!!!!!!!!!!!! I'm impressed !!!!!!!! It feels extremely fast compared to before !!!!!!! And it's more beautiful because you can see the other screens behind, exactly the same behaviour that when you press home, like you said !!
Previous Devices: Iphone 3g,Iphone 2g, HTC Desire HD, current device: SGS3 GT-I9300, SGNOTE 10.1 N8000,GT-S5570 Status: ROOTED,DEODEXED,ZIPALIGNED,TWEAKED -- in short always up to date. ROM: OMEGA,WANAMLITE,NEATLITE,Android Revolution HD,CODECROM,SOTMAX,MIUI KERNEL:siyah,yank,A1,STOCK, which ever is up to date. APPS:Caaaraaaacaaakaaaaaeaaaaaad Why am i Here?: IM A FLASH ADDICT!
By now, we’re all quite familiar with Tasker, the personal automation app that seems to be able to … more
XDA Developers was founded by developers, for developers. It is now a valuable resource for people who want to make the most of their mobile devices, from customizing the look and feel to adding new functionality. Are you a developer?