• Introducing XDA Computing: Discussion zones for Hardware, Software, and more!    Check it out!

[FIX][GUIDE] Ultra & Super, Liquid Smooth Rosie for Sense 3.0>3.6 ROMs v1.1

Search This thread

hamdir

Recognized Contributor
Aug 13, 2008
33,251
27,113
Beirut
twitter.com
If you enjoy this fix, please hit the thanks button or even better consider donating

This mod when mixed with Zeppelinrox's supercharger is:

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.

Screenshots: Ultra VS Super, thanks to Memnoc

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


Sense 3.0 - Stock Desire HD base

- Ultra Smooth Rosie Desire HD official base 3.12.405.1-Final - v1.1 (Full flat mode)

- Super Smooth Rosie Desire HD official base 3.12.405.1-Final (Semi 3D mode)

- Stock Rosie Desire HD official base 3.12.405.1-Final (Back to stock behavior)

Sense 3.5 - Stock Sensation XL base

warning: This is for pure stock roms like ER3BUS XL 3.x and not for RCMix3D or Affinity

Ultra Smooth Sense 3.5 Stock Sensation XL Runny base 1.22.461.2 - v1.1 (Full flat mode)

Super Smooth Sense 3.5 Stock Sensation XL Runny base 1.22.461.2 (Semi 3D mode)

Stock Rosie Sense 3.5 Sensation XL Runny base 1.22.461.2 (Back to stock)

Sense 3.5 - RCMix3D Runny & Virtuous Affinity

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

More Base Versions and Mods in the Second Post >>

GUIDE for applying this hack into any 3.x Rosie in the second post >>

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 :D



Thank you for donating:
- Patrics83
- preacher65
- naxuu
- lupipe
 
Last edited:

hamdir

Recognized Contributor
Aug 13, 2008
33,251
27,113
Beirut
twitter.com
Mods and variations are posted here:

Sense 3.0 - WVGA

- Downloads for Ice HD theme Desire HD base 3.12.405.1 compiled by preacher65

- Downloads for Desire HD official base 3.06.405.1

- Downloads for Desire HD official base 3.06.405.1 - Transparent Edition (transparent thanks to nickislauw)

- Downloads for Desire HD official base 3.06.405.1 - v1.1 - RCtweaks Edition (VoidU1.1)

- Downloads for Unity v2.39 Edition (strictly for this Unity version since it includes Virtuous tweaks)

- Revolution DHD 200911 theme and Honey HD 220911 theme compiled by preacher65

more transparency and app drawer choices by Dude360

Sense 3.5 & 3.6 - WVGA

- Ultra/Super Smooth Sense 3.6 Desire S base 14.01.401.2

- Ultra/Super Smooth Sense 3.6 Incredible S base 4.10.405.1

- Ultra/Super Smooth Sense 3.6 Sensation XL base 2.31.401.2

- Ultra/Super Smooth Sense 3.6 Sensation XL base 2.28.709.1

- Ultra/Super Smooth Sense 3.6 Incredible S base 4.08.1400.2

- Ultra/Super Smooth Sense 3.6 Desire S base 3.04.401.1

- Ultra/Super Smooth Sense 3.6 Stock Sensation XL Runny base 2.12.0.0

- Ultra/Super Smooth Sense 3.5 Stock Sensation XL Runny base 1.11.1113.1 - v1.1

- Ultra/Super Smooth Sense 3.5 Stock Sensation XL Runny base 1.05.401.4 - v1.1

- Ultra Smooth Rosie v1.1 For Virtuous Affinity v1.46 Fix2

- Ultra Smooth Rosie v1.1 For RCMix3D Runny v4.0

- Ultra Smooth Rosie v1.1 For RCMix3D Runny v4.0 - Ice Theme 111911

- Ultra Smooth Rosie v1.1 For BinDroidRHD 2.2.1

- Ultra Smooth Rosie v1.1 For FunzyRunny 4.3.1

- Ultra Smooth Sense 3.5 - RCMix3D Runny V3.0 Edition (Full flat mode, Replaces the RCtweaks' Smooth Scroll Effect to Ultra Smooth, fixed)

- Super Smooth Sense 3.5 - RCMix3D Runny V3.0 Edition (Semi 3D mode, Restores Stock Runny Rosie and RCtweaks' SmoothScroll to Super Smooth)

- Super Smooth Sense 3.5 - RCMix3D Runny V2.0 Edition (Semi 3D mode)

- Ultra Smooth Sense 3.5 - Runny Base 0.82.401.1 Edition (Full flat mode)

- Virtuous Sense 3.5 beta compiled by qaliza

- Rhyme 1.29.401.3 base compiled by zumnao

Sense 3.5 & 3.6 - Sensation QHD:

- Super/Ultra Smooth for QHD Sensation ICS base 3.33.401.106 For Sensation only! do not flash on Desire HD!

- Super/Ultra Smooth for QHD Sensation ICS base 3.33.401.6 For Sensation only! do not flash on Desire HD!

- Super/Ultra Smooth for QHD Sensation Final ICS base 3.32.401.5 For Sensation only! do not flash on Desire HD!

- Super/Ultra Smooth for QHD Sensation ICS base 3.30.401.1 For Sensation only! do not flash on Desire HD!

- Super/Ultra Smooth for QHD Sensation ICS base 3.25.401.101 For Sensation only! do not flash on Desire HD!

- Super/Ultra Smooth for QHD Sensation ICS base 3.24.401.1 For Sensation only! do not flash on Desire HD!

- Super/Ultra Smooth for QHD Sensation ICS base 3.12.401.x For Sensation only! do not flash on Desire HD!

- Super/Ultra Smooth for QHD Sensation base 2.08.401.1 For Sensation only! do not flash on Desire HD!

Sense 3.6 - Rezound HD:

- Ultra/Super Smooth Rezound base 3.11.605.1

Tablets - Honeycomb Sense

- Ultra/Super Smooth JetStream base 1.30.502.1 - 1280x768

- Ultra/Super Smooth JetStream base 1.17.502.3 - 1280x768

Sense 4.0

- Ultra & Super Smooth Sense 4 Launcher (Rosie) - One X

- Ultra & Super Smooth Sense 4 Launcher (Rosie) - One X AT&T & Rogers (thanks to sk806)

- Super Smooth Sense 4 Launcher (Rosie) - One S (thanks to he_stheone64)
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

What you need:
- Notepadd++ to easily edit the smali files
- Mode10Tools to edit .m10 files
- ROM Cleaner for CWM Roms to edit zip files

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

For Sense 3.0 - DHD base:
Code:
invoke-virtual {p0, v0}, Lcom/htc/android/rosie/home/fxcontrol/FxWorkspace;->onQuickScroll(Z)V

For Sense 3.5 - Runny base:
Code:
invoke-virtual {p0, v2}, Lcom/htc/android/rosie/home/fxcontrol/FxWorkspace;->onQuickScroll(Z)V

here is how it should look, the grey lines are the added ones

6263615708_4bdf552c92_b.jpg


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:
Code:
:cond_9

iget-object v3, p0, Lcom/htc/android/rosie/home/fxcontrol/FxWorkspaceClient;->mLauncher:Lcom/htc/launcher/Launcher;

invoke-virtual {v3, v1}, Lcom/htc/launcher/Launcher;->flattenWidgets(I)V

invoke-virtual {v2}, Lcom/htc/android/rosie/home/fxcontrol/FxWorkspace$ScreenHolder;->freeze()V

goto :goto_1

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

6263124185_5850737a83_b.jpg


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>button.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

6378918249_1c254440c4_b.jpg


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

good luck!
 
Last edited:

vjeta

Senior Member
Feb 5, 2009
335
31
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 !!
 
Last edited:

pahildo

Senior Member
Feb 4, 2010
243
17
Can I use it on mine? I have build number 3.06.405.2

Sent from my HTC Desire HD using XDA App
 

craacK

Senior Member
Apr 29, 2011
452
632
lookin really good so far :) NICE work !

are u able to disable the spinanimation after unlocking? (ARHD rom)
 

314

Senior Member
Sep 4, 2011
166
35
Sydney
will this work on runnyrom v2? 2.3.5 sense 3.5?
This will only work on stock desire hd 2.35 roms - Official sense 3.0 roms [Android revolution, etc] (Not sensation/glacier based such as VU and IcySmoke)

hamdir said:
3.06.405.1

Coming soon

- Runny Rosie


Besides, runny 2.0 is pretty smooth (For me at least, without supercharger script as well).


pahildo said:
how do i install this should i just flash it in recovery???

Yes. Only if you have the correct rom. Make a backup first.
 

pahildo

Senior Member
Feb 4, 2010
243
17
i'm on Coredroid v.8.1 build 3.06.405.2 it works.....
but it resized all my widgets bigger:(
 

Top Liked Posts