FORUMS
Remove All Ads from XDA
Honor 7x
Win an Honor 7X!

[MOD][GUIDE][v2.0] Sense 4.0 style Multitasking on Stock ICS [Added Reflection]

486 posts
Thanks Meter: 2,354
 
By evilisto, Senior Member on 9th April 2012, 10:30 AM
Post Reply Email Thread
17th June 2012, 06:13 PM |#111  
Quinny899's Avatar
Recognized Contributor
Flag Ormskirk, Lancashire, UK
Thanks Meter: 5,131
 
Donate to Me
More
Any idea which file is causing this:

I'm having to patch manually as I'm using a Sense 4 lite systemUI (Sense 4 lite doesn't have the cool 3d multitasking), and the smali location for the apktool patching (Sense has no source for this) is at .line 445

Thanks in advance, it looks epic and will almost complete my full sense 4 port
 
 
18th June 2012, 12:18 AM |#112  
Senior Member
Thanks Meter: 74
 
More
can somebody do this for the epic 4g touch using cm9? we want it too lol
18th June 2012, 01:00 AM |#113  
Senior Member
Thanks Meter: 4,142
 
More
Quote:
Originally Posted by moeinyoho

can somebody do this for the epic 4g touch using cm9? we want it too lol

Download the CM9 source and add it yourself or ask someone in your forum for help that it's not that hard to do..... read the last few pages if you need help with the patch....
Or if you're hardcore you can add the changes from the patch file by decompiling the needed apks...
Like evilsto stated it is rom specific so if you don't try it yourself then you're not getting the mod
8th July 2012, 03:03 AM |#114  
dannyxg27's Avatar
Senior Member
Thanks Meter: 11
 
More
you could get you tube hybrid or tablet for the picture for the post paranoid rom for sgs2 t989.thank you for your hard work.
13th July 2012, 01:19 PM |#115  
Senior Member
Thanks Meter: 46
 
More
Info 2 add on to this mod (smali direct edit)
open this smali:
systemui\smali\com\android\systemui\recent\Recents PanelView.smali

search this line:
.method private updateThumbnail(Lcom/android/systemui/recent/RecentsPanelView$ViewHolder;Landroid/graphics/Bitmap;ZZ)V

locate the end of the .methode a few lines after:
.end method

replace the selection under ".method private xxxxxxxxxxxxxx" and ".end method" Replace the entire code selected with this one!

Code:
.method private updateThumbnail(Lcom/android/systemui/recent/RecentsPanelView$ViewHolder;Landroid/graphics/Bitmap;ZZ)V
    .locals 30
    .parameter "h"
    .parameter "thumbnail"
    .parameter "show"
    .parameter "anim"

    .prologue
    .line 409
    if-eqz p2, :cond_4

    .line 413
    const/16 v26, 0x4

    .line 414
    .local v26, reflectionGap:I
    invoke-virtual/range {p2 .. p2}, Landroid/graphics/Bitmap;->getWidth()I

    move-result v6

    .line 415
    .local v6, width:I
    invoke-virtual/range {p2 .. p2}, Landroid/graphics/Bitmap;->getHeight()I

    move-result v24

    .line 417
    .local v24, height:I
    new-instance v8, Landroid/graphics/Matrix;

    invoke-direct {v8}, Landroid/graphics/Matrix;-><init>()V

    .line 418
    .local v8, matrix:Landroid/graphics/Matrix;
    const/high16 v3, 0x3f80

    const/high16 v4, -0x4080

    invoke-virtual {v8, v3, v4}, Landroid/graphics/Matrix;->preScale(FF)Z

    .line 420
    const/4 v4, 0x0

    mul-int/lit8 v3, v24, 0x2

    div-int/lit8 v5, v3, 0x3

    div-int/lit8 v7, v24, 0x3

    const/4 v9, 0x0

    move-object/from16 v3, p2

    invoke-static/range {v3 .. v9}, Landroid/graphics/Bitmap;->createBitmap(Landroid/graphics/Bitmap;IIIILandroid/graphics/Matrix;Z)Landroid/graphics/Bitmap;

    move-result-object v27

    .line 421
    .local v27, reflectionImage:Landroid/graphics/Bitmap;
    div-int/lit8 v3, v24, 0x3

    add-int v3, v3, v24

    sget-object v4, Landroid/graphics/Bitmap$Config;->ARGB_8888:Landroid/graphics/Bitmap$Config;

    invoke-static {v6, v3, v4}, Landroid/graphics/Bitmap;->createBitmap(IILandroid/graphics/Bitmap$Config;)Landroid/graphics/Bitmap;

    move-result-object v23

    .line 423
    .local v23, bitmapWithReflection:Landroid/graphics/Bitmap;
    new-instance v9, Landroid/graphics/Canvas;

    move-object/from16 v0, v23

    invoke-direct {v9, v0}, Landroid/graphics/Canvas;-><init>(Landroid/graphics/Bitmap;)V

    .line 424
    .local v9, canvas:Landroid/graphics/Canvas;
    const/4 v3, 0x0

    const/4 v4, 0x0

    const/4 v5, 0x0

    move-object/from16 v0, p2

    invoke-virtual {v9, v0, v3, v4, v5}, Landroid/graphics/Canvas;->drawBitmap(Landroid/graphics/Bitmap;FFLandroid/graphics/Paint;)V

    .line 425
    new-instance v14, Landroid/graphics/Paint;

    invoke-direct {v14}, Landroid/graphics/Paint;-><init>()V

    .line 426
    .local v14, defaultPaint:Landroid/graphics/Paint;
    const/4 v10, 0x0

    move/from16 v0, v24

    int-to-float v11, v0

    int-to-float v12, v6

    add-int/lit8 v3, v24, 0x4

    int-to-float v13, v3

    invoke-virtual/range {v9 .. v14}, Landroid/graphics/Canvas;->drawRect(FFFFLandroid/graphics/Paint;)V

    .line 427
    const/4 v3, 0x0

    add-int/lit8 v4, v24, 0x4

    int-to-float v4, v4

    const/4 v5, 0x0

    move-object/from16 v0, v27

    invoke-virtual {v9, v0, v3, v4, v5}, Landroid/graphics/Canvas;->drawBitmap(Landroid/graphics/Bitmap;FFLandroid/graphics/Paint;)V

    .line 429
    new-instance v25, Landroid/graphics/Paint;

    invoke-direct/range {v25 .. v25}, Landroid/graphics/Paint;-><init>()V

    .line 430
    .local v25, paint:Landroid/graphics/Paint;
    new-instance v15, Landroid/graphics/LinearGradient;

    const/16 v16, 0x0

    invoke-virtual/range {p2 .. p2}, Landroid/graphics/Bitmap;->getHeight()I

    move-result v3

    int-to-float v0, v3

    move/from16 v17, v0

    const/16 v18, 0x0

    invoke-virtual/range {v23 .. v23}, Landroid/graphics/Bitmap;->getHeight()I

    move-result v3

    add-int/lit8 v3, v3, 0x4

    int-to-float v0, v3

    move/from16 v19, v0

    const v20, 0x70ffffff

    const v21, 0xffffff

    sget-object v22, Landroid/graphics/Shader$TileMode;->CLAMP:Landroid/graphics/Shader$TileMode;

    invoke-direct/range {v15 .. v22}, Landroid/graphics/LinearGradient;-><init>(FFFFIILandroid/graphics/Shader$TileMode;)V

    .line 433
    .local v15, shader:Landroid/graphics/LinearGradient;
    move-object/from16 v0, v25

    invoke-virtual {v0, v15}, Landroid/graphics/Paint;->setShader(Landroid/graphics/Shader;)Landroid/graphics/Shader;

    .line 434
    new-instance v3, Landroid/graphics/PorterDuffXfermode;

    sget-object v4, Landroid/graphics/PorterDuff$Mode;->DST_IN:Landroid/graphics/PorterDuff$Mode;

    invoke-direct {v3, v4}, Landroid/graphics/PorterDuffXfermode;-><init>(Landroid/graphics/PorterDuff$Mode;)V

    move-object/from16 v0, v25

    invoke-virtual {v0, v3}, Landroid/graphics/Paint;->setXfermode(Landroid/graphics/Xfermode;)Landroid/graphics/Xfermode;

    .line 435
    const/16 v17, 0x0

    move/from16 v0, v24

    int-to-float v0, v0

    move/from16 v18, v0

    int-to-float v0, v6

    move/from16 v19, v0

    invoke-virtual/range {v23 .. v23}, Landroid/graphics/Bitmap;->getHeight()I

    move-result v3

    add-int/lit8 v3, v3, 0x4

    int-to-float v0, v3

    move/from16 v20, v0

    move-object/from16 v16, v9

    move-object/from16 v21, v25

    invoke-virtual/range {v16 .. v21}, Landroid/graphics/Canvas;->drawRect(FFFFLandroid/graphics/Paint;)V

    .line 438
    move-object/from16 v0, p1

    iget-object v3, v0, Lcom/android/systemui/recent/RecentsPanelView$ViewHolder;->thumbnailViewImage:Landroid/widget/ImageView;

    move-object/from16 v0, v23

    invoke-virtual {v3, v0}, Landroid/widget/ImageView;->setImageBitmap(Landroid/graphics/Bitmap;)V

    .line 442
    move-object/from16 v0, p1

    iget-object v3, v0, Lcom/android/systemui/recent/RecentsPanelView$ViewHolder;->thumbnailViewImageBitmap:Landroid/graphics/Bitmap;

    if-eqz v3, :cond_0

    move-object/from16 v0, p1

    iget-object v3, v0, Lcom/android/systemui/recent/RecentsPanelView$ViewHolder;->thumbnailViewImageBitmap:Landroid/graphics/Bitmap;

    invoke-virtual {v3}, Landroid/graphics/Bitmap;->getWidth()I

    move-result v3

    invoke-virtual/range {p2 .. p2}, Landroid/graphics/Bitmap;->getWidth()I

    move-result v4

    if-ne v3, v4, :cond_0

    move-object/from16 v0, p1

    iget-object v3, v0, Lcom/android/systemui/recent/RecentsPanelView$ViewHolder;->thumbnailViewImageBitmap:Landroid/graphics/Bitmap;

    invoke-virtual {v3}, Landroid/graphics/Bitmap;->getHeight()I

    move-result v3

    invoke-virtual/range {p2 .. p2}, Landroid/graphics/Bitmap;->getHeight()I

    move-result v4

    if-eq v3, v4, :cond_1

    .line 445
    :cond_0
    move-object/from16 v0, p0

    iget-boolean v3, v0, Lcom/android/systemui/recent/RecentsPanelView;->mFitThumbnailToXY:Z

    if-eqz v3, :cond_5

    .line 446
    move-object/from16 v0, p1

    iget-object v3, v0, Lcom/android/systemui/recent/RecentsPanelView$ViewHolder;->thumbnailViewImage:Landroid/widget/ImageView;

    const/high16 v4, 0x41c8

    invoke-virtual {v3, v4}, Landroid/widget/ImageView;->setRotationY(F)V

    .line 455
    :cond_1
    :goto_0
    if-eqz p3, :cond_3

    move-object/from16 v0, p1

    iget-object v3, v0, Lcom/android/systemui/recent/RecentsPanelView$ViewHolder;->thumbnailView:Landroid/view/View;

    invoke-virtual {v3}, Landroid/view/View;->getVisibility()I

    move-result v3

    if-eqz v3, :cond_3

    .line 456
    if-eqz p4, :cond_2

    .line 457
    move-object/from16 v0, p1

    iget-object v3, v0, Lcom/android/systemui/recent/RecentsPanelView$ViewHolder;->thumbnailView:Landroid/view/View;

    move-object/from16 v0, p0

    iget-object v4, v0, Lcom/android/systemui/recent/RecentsPanelView;->mContext:Landroid/content/Context;

    const v5, 0x7f04000f

    invoke-static {v4, v5}, Landroid/view/animation/AnimationUtils;->loadAnimation(Landroid/content/Context;I)Landroid/view/animation/Animation;

    move-result-object v4

    invoke-virtual {v3, v4}, Landroid/view/View;->setAnimation(Landroid/view/animation/Animation;)V

    .line 460
    :cond_2
    move-object/from16 v0, p1

    iget-object v3, v0, Lcom/android/systemui/recent/RecentsPanelView$ViewHolder;->thumbnailView:Landroid/view/View;

    const/4 v4, 0x0

    invoke-virtual {v3, v4}, Landroid/view/View;->setVisibility(I)V

    .line 462
    :cond_3
    move-object/from16 v0, p2

    move-object/from16 v1, p1

    iput-object v0, v1, Lcom/android/systemui/recent/RecentsPanelView$ViewHolder;->thumbnailViewImageBitmap:Landroid/graphics/Bitmap;

    .line 464
    .end local v6           #width:I
    .end local v8           #matrix:Landroid/graphics/Matrix;
    .end local v9           #canvas:Landroid/graphics/Canvas;
    .end local v14           #defaultPaint:Landroid/graphics/Paint;
    .end local v15           #shader:Landroid/graphics/LinearGradient;
    .end local v23           #bitmapWithReflection:Landroid/graphics/Bitmap;
    .end local v24           #height:I
    .end local v25           #paint:Landroid/graphics/Paint;
    .end local v26           #reflectionGap:I
    .end local v27           #reflectionImage:Landroid/graphics/Bitmap;
    :cond_4
    return-void

    .line 448
    .restart local v6       #width:I
    .restart local v8       #matrix:Landroid/graphics/Matrix;
    .restart local v9       #canvas:Landroid/graphics/Canvas;
    .restart local v14       #defaultPaint:Landroid/graphics/Paint;
    .restart local v15       #shader:Landroid/graphics/LinearGradient;
    .restart local v23       #bitmapWithReflection:Landroid/graphics/Bitmap;
    .restart local v24       #height:I
    .restart local v25       #paint:Landroid/graphics/Paint;
    .restart local v26       #reflectionGap:I
    .restart local v27       #reflectionImage:Landroid/graphics/Bitmap;
    :cond_5
    new-instance v29, Landroid/graphics/Matrix;

    invoke-direct/range {v29 .. v29}, Landroid/graphics/Matrix;-><init>()V

    .line 449
    .local v29, scaleMatrix:Landroid/graphics/Matrix;
    move-object/from16 v0, p0

    iget v3, v0, Lcom/android/systemui/recent/RecentsPanelView;->mThumbnailWidth:I

    int-to-float v3, v3

    invoke-virtual/range {p2 .. p2}, Landroid/graphics/Bitmap;->getWidth()I

    move-result v4

    int-to-float v4, v4

    div-float v28, v3, v4

    .line 450
    .local v28, scale:F
    move-object/from16 v0, v29

    move/from16 v1, v28

    move/from16 v2, v28

    invoke-virtual {v0, v1, v2}, Landroid/graphics/Matrix;->setScale(FF)V

    .line 451
    move-object/from16 v0, p1

    iget-object v3, v0, Lcom/android/systemui/recent/RecentsPanelView$ViewHolder;->thumbnailViewImage:Landroid/widget/ImageView;

    sget-object v4, Landroid/widget/ImageView$ScaleType;->MATRIX:Landroid/widget/ImageView$ScaleType;

    invoke-virtual {v3, v4}, Landroid/widget/ImageView;->setScaleType(Landroid/widget/ImageView$ScaleType;)V

    .line 452
    move-object/from16 v0, p1

    iget-object v3, v0, Lcom/android/systemui/recent/RecentsPanelView$ViewHolder;->thumbnailViewImage:Landroid/widget/ImageView;

    move-object/from16 v0, v29

    invoke-virtual {v3, v0}, Landroid/widget/ImageView;->setImageMatrix(Landroid/graphics/Matrix;)V

    goto :goto_0
.end method
recompil and voila
The Following 6 Users Say Thank You to ReDroiD™ For This Useful Post: [ View ] Gift ReDroiD™ Ad-Free
30th July 2012, 04:36 PM |#116  
Senior Member
Thanks Meter: 260
 
More
what will this (additional) tweak do?
also is someone willing to submit this as an option to CM9/10? it would be a great addition!
1st August 2012, 03:54 AM |#117  
Member
Flag Palmview
Thanks Meter: 4
 
More
Wink HELP!!!
Can somebody help me patch this I would really appreciated Thanks!!!
Attached Files
File Type: apk framework-res.apk - [Click for QR Code] (4.73 MB, 11 views)
File Type: apk SystemUI.apk - [Click for QR Code] (777.3 KB, 10 views)
7th September 2012, 09:28 AM |#118  
hello00's Avatar
Senior Member
Flag South Miami, FL
Thanks Meter: 2,956
 
More
since i dont have linux..im trying to do the editing manually but it is kinda difficult figuring out what to edit/add by just looking at the patch file..is there another to do this? i tried to use tortoisesvn but it asks me for my working copy..whatever that is..thanks for the mod!
7th September 2012, 05:19 PM |#119  
AlphaEchoViktorSierra's Avatar
Senior Member
Flag Seattle
Thanks Meter: 112
 
Donate to Me
More
Quote:
Originally Posted by hello00

since i dont have linux..im trying to do the editing manually but it is kinda difficult figuring out what to edit/add by just looking at the patch file..is there another to do this? i tried to use tortoisesvn but it asks me for my working copy..whatever that is..thanks for the mod!

I've tried everything on Windows, trust me you need ubuntu

Sent from my Nexus S 4G using xda premium
The Following User Says Thank You to AlphaEchoViktorSierra For This Useful Post: [ View ] Gift AlphaEchoViktorSierra Ad-Free
7th September 2012, 06:06 PM |#120  
hello00's Avatar
Senior Member
Flag South Miami, FL
Thanks Meter: 2,956
 
More
oh well.. time to install ubuntu then

Sent from Mars
The Following User Says Thank You to hello00 For This Useful Post: [ View ] Gift hello00 Ad-Free
29th September 2012, 07:53 AM |#121  
deepaktom's Avatar
Senior Member
Flag Chennai
Thanks Meter: 256
 
More
Hey I've successfully ported this onto an mdpi device running cm9.1 but im having an issue after opening, the app thumbnail on the left side, jumps up once before settling down. any idea why?
Post Reply Subscribe to Thread

Tags
evilisto the mod man ^_^, multitasking sense 4.0 htc one

Guest Quick Reply (no urls or BBcode)
Message:
Previous Thread Next Thread
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes