[PORT] [UPDATE V.1.6.] Weather from Note 4 for android 4.4.2 FULLY WORKING

Search This thread

dack23

Senior Member
Feb 26, 2014
1,304
1,238
42
Hoodrich

Attachments

  • Unbenakknnt.JPG
    Unbenakknnt.JPG
    8.6 KB · Views: 102,215
  • Like
Reactions: sabah98

DoofDoof13

Senior Member
Dec 5, 2007
157
21
Perth
A little confused with 4 or so updates in the last 24 hours. Which is the latest and greatest zip? First post or dack23 latest update?

Thanks for the hardwork!!

GT-I9500 running OzcanRom
 

Top Liked Posts

  • There are no posts matching your filters.
  • 52
    I ported the weather widget from note 4.
    Installing: CWM, Philz
    Download for SM-G900F: https://www.mediafire.com/?nshu7vvtnxbqys9


    update is available v.1.6.:
    - Resize vertical first weather widget;
    - fixed all layouts.


    thanks for the help:
    Goldie - fix FC city list;
    dack23 - fix all fonts and summertime icon.;
    and other.

    15
    OK....decompile twframework.jar...

    Open TwAdapterView.smali

    Find this...

    Code:
    # annotations
    .annotation system Ldalvik/annotation/MemberClasses;
        value = {
            Lcom/sec/android/touchwiz/widget/TwAdapterView$1;,
            Lcom/sec/android/touchwiz/widget/TwAdapterView$SelectionNotifier;,
            Lcom/sec/android/touchwiz/widget/TwAdapterView$AdapterDataSetObserver;,
            Lcom/sec/android/touchwiz/widget/TwAdapterView$AdapterContextMenuInfo;,
            Lcom/sec/android/touchwiz/widget/TwAdapterView$OnTwNotifyKeyPressListener;,
            Lcom/sec/android/touchwiz/widget/TwAdapterView$OnItemSelectedListener;,
            Lcom/sec/android/touchwiz/widget/TwAdapterView$OnItemLongClickListener;,
            Lcom/sec/android/touchwiz/widget/TwAdapterView$OnItemClickListener;
        }
    .end annotation

    and change it to...

    Code:
    # annotations
    .annotation system Ldalvik/annotation/MemberClasses;
        value = {
            Lcom/sec/android/touchwiz/widget/TwAdapterView$1;,
            Lcom/sec/android/touchwiz/widget/TwAdapterView$SelectionNotifier;,
            Lcom/sec/android/touchwiz/widget/TwAdapterView$AdapterDataSetObserver;,
            Lcom/sec/android/touchwiz/widget/TwAdapterView$AdapterContextMenuInfo;,
            Lcom/sec/android/touchwiz/widget/TwAdapterView$OnTwNotifyKeyPressListener;,
          [COLOR="Red"]  Lcom/sec/android/touchwiz/widget/TwAdapterView$OnTwMultiSelectedListener;,[/COLOR]
            Lcom/sec/android/touchwiz/widget/TwAdapterView$OnItemSelectedListener;,
            Lcom/sec/android/touchwiz/widget/TwAdapterView$OnItemLongClickListener;,
            Lcom/sec/android/touchwiz/widget/TwAdapterView$OnItemClickListener;
        }
    .end annotation

    Then this...

    Code:
    .field mOnItemLongClickListener:Lcom/sec/android/touchwiz/widget/TwAdapterView$OnItemLongClickListener;
    
    .field mOnItemSelectedListener:Lcom/sec/android/touchwiz/widget/TwAdapterView$OnItemSelectedListener;

    Add this on the next line so it looks like this...

    Code:
    .field mOnItemLongClickListener:Lcom/sec/android/touchwiz/widget/TwAdapterView$OnItemLongClickListener;
    
    .field mOnItemSelectedListener:Lcom/sec/android/touchwiz/widget/TwAdapterView$OnItemSelectedListener;
    
    [COLOR="red"].field mOnTwMultiSelectedListener:Lcom/sec/android/touchwiz/widget/TwAdapterView$OnTwMultiSelectedListener;[/COLOR]

    Go to the end of the smali and add these new methods after it...

    Code:
    .method public final getOnTwMultiSelectedListener()Lcom/sec/android/touchwiz/widget/TwAdapterView$OnTwMultiSelectedListener;
        .locals 1
    
        .prologue
        .line 437
        .local p0, this:Lcom/sec/android/touchwiz/widget/TwAdapterView;,"Lcom/sec/android/touchwiz/widget/TwAdapterView;"
        iget-object v0, p0, Lcom/sec/android/touchwiz/widget/TwAdapterView;->mOnTwMultiSelectedListener:Lcom/sec/android/touchwiz/widget/TwAdapterView$OnTwMultiSelectedListener;
    
        return-object v0
    .end method
    
    .method public setTwMultiSelectedListener(Lcom/sec/android/touchwiz/widget/TwAdapterView$OnTwMultiSelectedListener;)V
        .locals 0
        .parameter "listener"
    
        .prologue
        .line 429
        .local p0, this:Lcom/sec/android/touchwiz/widget/TwAdapterView;,"Lcom/sec/android/touchwiz/widget/TwAdapterView;"
        iput-object p1, p0, Lcom/sec/android/touchwiz/widget/TwAdapterView;->mOnTwMultiSelectedListener:Lcom/sec/android/touchwiz/widget/TwAdapterView$OnTwMultiSelectedListener;
    
        .line 430
        return-void
    .end method
    
    .method public twNotifyMultiSelectedStart()V
        .locals 1
    
        .prologue
        .line 455
        .local p0, this:Lcom/sec/android/touchwiz/widget/TwAdapterView;,"Lcom/sec/android/touchwiz/widget/TwAdapterView;"
        iget-object v0, p0, Lcom/sec/android/touchwiz/widget/TwAdapterView;->mOnTwMultiSelectedListener:Lcom/sec/android/touchwiz/widget/TwAdapterView$OnTwMultiSelectedListener;
    
        if-eqz v0, :cond_0
    
        .line 459
        :cond_0
        return-void
    .end method
    
    .method public twNotifyMultiSelectedStart(II)V
        .locals 1
      
        .prologue
        .line 473
        .local p0, this:Lcom/sec/android/touchwiz/widget/TwAdapterView;,"Lcom/sec/android/touchwiz/widget/TwAdapterView;"
        iget-object v0, p0, Lcom/sec/android/touchwiz/widget/TwAdapterView;->mOnTwMultiSelectedListener:Lcom/sec/android/touchwiz/widget/TwAdapterView$OnTwMultiSelectedListener;
    
        if-eqz v0, :cond_0
    
        .line 474
        iget-object v0, p0, Lcom/sec/android/touchwiz/widget/TwAdapterView;->mOnTwMultiSelectedListener:Lcom/sec/android/touchwiz/widget/TwAdapterView$OnTwMultiSelectedListener;
    
        invoke-interface {v0, p1, p2}, Lcom/sec/android/touchwiz/widget/TwAdapterView$OnTwMultiSelectedListener;->OnTwMultiSelectStart(II)V
    
        .line 477
        :cond_0
        return-void
    .end method
    
    .method public twNotifyMultiSelectedState(Landroid/view/View;IJZZZ)Z
        .locals 9
        
        .prologue
        .line 442
        .local p0, this:Lcom/sec/android/touchwiz/widget/TwAdapterView;,"Lcom/sec/android/touchwiz/widget/TwAdapterView;"
        iget-object v0, p0, Lcom/sec/android/touchwiz/widget/TwAdapterView;->mOnTwMultiSelectedListener:Lcom/sec/android/touchwiz/widget/TwAdapterView$OnTwMultiSelectedListener;
    
        if-eqz v0, :cond_0
    
        .line 443
        iget-object v0, p0, Lcom/sec/android/touchwiz/widget/TwAdapterView;->mOnTwMultiSelectedListener:Lcom/sec/android/touchwiz/widget/TwAdapterView$OnTwMultiSelectedListener;
    
        move-object v1, p0
    
        move-object v2, p1
    
        move v3, p2
    
        move-wide v4, p3
    
        move v6, p5
    
        move v7, p6
    
        move/from16 v8, p7
    
        invoke-interface/range {v0 .. v8}, Lcom/sec/android/touchwiz/widget/TwAdapterView$OnTwMultiSelectedListener;->onTwMultiSelected(Lcom/sec/android/touchwiz/widget/TwAdapterView;Landroid/view/View;IJZZZ)V
    
        .line 444
        const/4 v0, 0x1
    
        .line 447
        :goto_0
        return v0
    
        :cond_0
        const/4 v0, 0x0
    
        goto :goto_0
    .end method
    
    .method public twNotifyMultiSelectedStop()V
        .locals 1
    
        .prologue
        .line 466
        .local p0, this:Lcom/sec/android/touchwiz/widget/TwAdapterView;,"Lcom/sec/android/touchwiz/widget/TwAdapterView;"
        iget-object v0, p0, Lcom/sec/android/touchwiz/widget/TwAdapterView;->mOnTwMultiSelectedListener:Lcom/sec/android/touchwiz/widget/TwAdapterView$OnTwMultiSelectedListener;
    
        if-eqz v0, :cond_0
    
        .line 469
        :cond_0
        return-void
    .end method
    
    .method public twNotifyMultiSelectedStop(II)V
        .locals 1
      
        .prologue
        .line 481
        .local p0, this:Lcom/sec/android/touchwiz/widget/TwAdapterView;,"Lcom/sec/android/touchwiz/widget/TwAdapterView;"
        iget-object v0, p0, Lcom/sec/android/touchwiz/widget/TwAdapterView;->mOnTwMultiSelectedListener:Lcom/sec/android/touchwiz/widget/TwAdapterView$OnTwMultiSelectedListener;
    
        if-eqz v0, :cond_0
    
        .line 482
        iget-object v0, p0, Lcom/sec/android/touchwiz/widget/TwAdapterView;->mOnTwMultiSelectedListener:Lcom/sec/android/touchwiz/widget/TwAdapterView$OnTwMultiSelectedListener;
    
        invoke-interface {v0, p1, p2}, Lcom/sec/android/touchwiz/widget/TwAdapterView$OnTwMultiSelectedListener;->OnTwMultiSelectStop(II)V
    
        .line 484
        :cond_0
        return-void
    .end method
    Save and close.

    Then open TwAbsListView.smali and find this...

    Code:
    .field private mIsCtrlkeyPressed:Z
    
    .field private mIsDoubleTapDone:Z

    Add an extra line so it looks like this...

    Code:
    .field private mIsCtrlkeyPressed:Z
    
    .field private mIsDoubleTapDone:Z
    
    [COLOR="red"].field private mIsDragBlockEnabled:Z[/COLOR]

    Then go to the bottom of the smali and add this method...

    Code:
    .method public setEnableDragBlock(Z)V
        .locals 1
        
        .prologue
        .line 9476
    
    const/4 v0, 0x0
        iput-boolean v0, p0, Lcom/sec/android/touchwiz/widget/TwAbsListView;->mIsDragBlockEnabled:Z
    
        .line 9477
        return-void
    .end method



    Save then just add this file attached to the folder Lcom/sec/android/touchwiz/widget/

    Compile...profit :)
    6
    update is available v.1.6.:
    - Resize vertical first weather widget;
    - fixed all layouts.
    6
    oh okay. soon update:

    - fix FC button city list (thx Goldie);
    - fix layout city list animation;
    - fix layout city list animation (change the order of weather);
    - fix layout cubeviewpager;
    - fix layout map_item_new and map_item_new_wqhd;
    - fix icons (first weather widget);
    - fix icons summertime icon and infro preview (thx [motionless]);
    - add first weather widget preview in the widget;
    - add icon add weather city in first weather widget;
    - and etc..

    4
    update is available...​