> Attention!

New threads need to be created only inroot partition! In the future, they will be processed by moderators.



Samsung SM-N950F (F / DS) Galaxy Note 8 - Editing system applications



Rep: (7355)
Samsung SM-N950F (F / DS) Galaxy Note 8 - Editing system applications
Description | Editing system applicationsпїЅ | Purchase пїЅ | Discussion пїЅ | Firmware пїЅ | Custom firmware пїЅ | Modification and decorations пїЅ | Modifications and decorations for devices without ROOT rights пїЅ | Owners Club пїЅ | Useful topics section

Attached Image


Patterns of modifications and other decorations
Copy the content into your message and fill
Template for modifications:
[CENTER] [SIZE = 3] [B] [COLOR = royalblue] Here we write the name of the mod [/ COLOR] [/ B] [/ SIZE] [/ CENTER]
[CENTER] Insert the main screenshot here [/ CENTER]
[COLOR = blue] [B] Author [/ B] [/ COLOR]: Specify the author
[COLOR = blue] [B] Firmware [/ B] [/ COLOR]: Specify the version / number, code / deodex
[COLOR = blue] [B] Description [/ B] [/ COLOR]: The most complete description of the mod
[SPOILER = Extras. screenshots] If there are additional screenshots, then insert it here [/ SPOILER]
[COLOR = blue] [B] Installation [/ B] [/ COLOR]: Specify the installation method / method
[COLOR = blue] [B] Download [/ B] [/ COLOR]: Attach files to download


Template for other decorations (icons, widgets, programs, etc.):
[CENTER] [SIZE = 3] [B] [COLOR = royalblue] Here we write the name [/ COLOR] [/ B] [/ SIZE] [/ CENTER]
[CENTER] Insert a screenshot here (if any) [/ CENTER]
[COLOR = blue] [B] Description [/ B] [/ COLOR]: Full description
[COLOR = blue] [B] Download link [/ B] [/ COLOR]: Give a link to download


Catalog of this thread
Modification Installation Instructions
Android 7.1.1
Android 8.x.x
Android 9.x.x
Android 10
useful links
The authors of modifications and the Administration of the forum are not responsible for the performance of your devices!
Remember: everything you do - you do at your own peril and risk!


Post has been editedWlryss - 25.11.20, 08:58
Reason for editing: Editing header



Rep: (3339)
Added byaddition



Rep: (2039)
Commands for autonomy. settings via TouchWizHome_2017

Attached Image

Description :For fans avtonom.nastroek. On 8th android have difficulty in inserting commands for autonomous. settings SecSettings, yes, very long time SecSettings going. I offer an alternative - to embed commands in TouchWizHome_2017 on xml / launcher_preferences way
But because it will not work as a team for a quick restart
Adding the manifest line TouchWizHome_2017
<uses-permission android: name = "android.permission.RECEIVE_BOOT_COMPLETED" />
<uses-permission android: name = "android.permission.WRITE_SETTINGS" />
<uses-permission android: name = "android.permission.WRITE_SECURE_SETTINGS" />
<uses-permission android: name = "android.permission.INTERNAL_SYSTEM_WINDOW" />
<uses-permission android: name = "android.permission.SYSTEM_ALERT_WINDOW" />
<uses-permission android: name = "android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android: name = "android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android: name = "android.permission.WRITE_MEDIA_STORAGE" />
<uses-permission android: name = "android.permission.ACCESS_SUPERUSER" />
<uses-permission android: name = "android.permission.MANAGE_DOCUMENTS" />
<uses-permission android: name = "com.sec.testingsettings.permission.KEYSTRING" />
<uses-permission android: name = "com.sec.android.app.servicemodeapp.permission.KEYSTRING" />
<uses-permission android: name = "com.sec.modem.settings.permission.KEYSTRING" />
<uses-permission android: name = "com.sec.android.app.factorymode.permission.KEYSTRING" />
<uses-permission android: name = "com.sec.android.app.phoneutil.permission.KEYSTRING" />
<uses-permission android: name = "com.sec.android.app.selftestmode.permission.KEYSTRING" />
<uses-permission android: name = "com.sec.android.app.lcdtest.permission.KEYSTRING" />
<uses-permission android: name = "com.sec.android.provider.emergencymode.READ_DATABASE" />
<uses-permission android: name = "com.sec.android.emergencymode.permission.LAUNCH_EMERGENCYMODE_SERVICE" />
<uses-permission android: name = "com.sec.android.app.hiddenmenu.permission.KEYSTRING" />

Now a quick restart of the application will work.
Add. screenshots
Attached Image
Attached Image


Post has been editedaliwaris - 08.06.18, 14:05



Rep: (3339)
Angles of thumbnails of applications in the panel of recent applications with a choice in the settings

ANDROID 8.0
Attached Image
Attached Image
Attached Image
Attached Image

1. Add toSystemUI.apk Gearutils ..
2. Change the value in theSystemUI \ res \ values ​​\ dimens.xml
<dimen name = "recents_task_view_more_rounded_corners_radius">0.0dip</ dimen>

adding at the end of the file line c (+):
+ <dimen name = "recents_task_view_more_rounded_corners_radius_1">4.0dip</ dimen>
+ <dimen name = "recents_task_view_more_rounded_corners_radius_2">8.0dip</ dimen>
+ <dimen name = "recents_task_view_more_rounded_corners_radius_3">16.0dip</ dimen>
</ resources>
.
4. assemble and disassembleSystemUI.apk .
5. inSystemUI \ smali \ com \ android \ systemui \ recents \ views \ TaskView.smali in the method .method public constructor<init>(Landroid / content / Context; Landroid / util / AttributeSet; II) V increasing the number of locales by 3 , Delete the row from the (-) and add ice from (+++) to (+++)
.method public constructor<init>(Landroid / content / Context; Landroid / util / AttributeSet; II) V
.method public constructor<init>(Landroid / content / Context; Landroid / util / AttributeSet; II) V
.locals 8
.
.
return-void

: cond_1
- const v3, 0x7f070553 #<public type = "dimen" name = "recents_task_view_more_rounded_corners_radius" id = "0x7f070553" />


+++ const-string v6, "recents_view_corners_radius"

const / 4 v7, 0x1

invoke-static {v6, v7}, Lcom / android / wubydax / GearUtils; ->getDbIntForKey (Ljava / lang / String; I) I

move-result v5

const v6, 0x0

if-eq v5, v6,: cond_next

const v6, 0x1

if-eq v5, v6,: cond_next1

const v6, 0x2

if-eq v5, v6,: cond_next2

const v6, 0x3

if-eq v5, v6,: cond_next3

: cond_next
const v3, 0x7f070553 #<public type = "dimen" name = "recents_task_view_more_rounded_corners_radius" id = "0x7f070553" />

goto: goto_next

: cond_next1
const v3, 0x7f070698 #<public type = "dimen" name = "recents_task_view_more_rounded_corners_radius_1" id = "0x7f070698" />

goto: goto_next

: cond_next2
const v3, 0x7f070699 #<public type = "dimen" name = "recents_task_view_more_rounded_corners_radius_2" id = "0x7f070699" />

goto: goto_next

: cond_next3
const v3, 0x7f07069a #<public type = "dimen" name = "recents_task_view_more_rounded_corners_radius_3" id = "0x7f07069a" />

: Goto_next +++

invoke-virtual {v2, v3}, Landroid / content / res / Resources; ->getDimensionPixelSize (I) I

move-result v1

goto: goto_0
.end method

6. InSystemUI \ smali \ com \ android \ systemui \ recents \ views \ TaskViewHeader.smali in the method .method public constructor<init>(Landroid / content / Context; Landroid / util / AttributeSet; II) V increasing the number of locales by 3 , Delete the row from the (-) and add ice from (+++) to (+++)
.method public constructor<init>(Landroid / content / Context; Landroid / util / AttributeSet; II) V
.method public constructor<init>(Landroid / content / Context; Landroid / util / AttributeSet; II) V
.locals 9
.
.
.
: cond_3

- const v1, 0x7f070553 #<public type = "dimen" name = "recents_task_view_more_rounded_corners_radius" id = "0x7f070553" />

+++ const-string v6, "recents_view_corners_radius"

const / 4 v7, 0x1

invoke-static {v6, v7}, Lcom / android / wubydax / GearUtils; ->getDbIntForKey (Ljava / lang / String; I) I

move-result v8

const v6, 0x0

if-eq v8, v6,: cond_next

const v6, 0x1

if-eq v8, v6,: cond_next1

const v6, 0x2

if-eq v8, v6,: cond_next2

const v6, 0x3

if-eq v8, v6,: cond_next3

: cond_next
const v1, 0x7f070553 #<public type = "dimen" name = "recents_task_view_more_rounded_corners_radius" id = "0x7f070553" />

goto: goto_next

: cond_next1
const v1, 0x7f070698 #<public type = "dimen" name = "recents_task_view_more_rounded_corners_radius_1" id = "0x7f070698" />

goto: goto_next

: cond_next2
const v1, 0x7f070699 #<public type = "dimen" name = "recents_task_view_more_rounded_corners_radius_2" id = "0x7f070699" />

goto: goto_next

: cond_next3
const v1, 0x7f07069a #<public type = "dimen" name = "recents_task_view_more_rounded_corners_radius_3" id = "0x7f07069a" />

: Goto_next +++

invoke-virtual {v0, v1}, Landroid / content / res / Resources; ->getDimensionPixelSize (I) I

move-result v1

goto / 16: goto_1

: cond_4
invoke-static {v2, v3, v3, v3}, Landroid / graphics / Color; ->argb (iiii) i

move-result v1

goto: goto_2

: cond_5
move v1, v2

goto: goto_3
.end method

7. InSystemUI \ smali \ com \ android \ systemui \ recents \ views \ TaskViewThumbnail.smali in the method .method public constructor<init>(Landroid / content / Context; Landroid / util / AttributeSet; II) V increasing the number of locales by 3 , Delete the row from the (-) and add ice from (+++) to (+++)
.method public constructor<init>(Landroid / content / Context; Landroid / util / AttributeSet; II) V
.method public constructor<init>(Landroid / content / Context; Landroid / util / AttributeSet; II) V
.locals 10
.
.
.
: cond_1
invoke-virtual {p0}, Lcom / android / systemui / recents / views / TaskViewThumbnail; ->getResources () Landroid / content / res / Resources;

move-result-object v1

- const v2, 0x7f070553 #<public type = "dimen" name = "recents_task_view_more_rounded_corners_radius" id = "0x7f070553" />

+++ const-string v9, "recents_view_corners_radius"

const / 4 v7, 0x1

invoke-static {v9, v7}, Lcom / android / wubydax / GearUtils; ->getDbIntForKey (Ljava / lang / String; I) I

move-result v8

const v9, 0x0

if-eq v8, v9,: cond_next

const v9, 0x1

if-eq v8, v9,: cond_next1

const v9, 0x2

if-eq v8, v9,: cond_next2

const v9, 0x3

if-eq v8, v9,: cond_next3

: cond_next
const v2, 0x7f070553 #<public type = "dimen" name = "recents_task_view_more_rounded_corners_radius" id = "0x7f070553" />

goto: goto_next

: cond_next1
const v2, 0x7f070698 #<public type = "dimen" name = "recents_task_view_more_rounded_corners_radius_1" id = "0x7f070698" />

goto: goto_next

: cond_next2
const v2, 0x7f070699 #<public type = "dimen" name = "recents_task_view_more_rounded_corners_radius_2" id = "0x7f070699" />

goto: goto_next

: cond_next3
const v2, 0x7f07069a #<public type = "dimen" name = "recents_task_view_more_rounded_corners_radius_3" id = "0x7f07069a" />

: Goto_next +++

invoke-virtual {v1, v2}, Landroid / content / res / Resources; ->getDimensionPixelSize (I) I

move-result v1

iput v1, p0, Lcom / android / systemui / recents / views / TaskViewThumbnail; ->mCornerRadius: I

goto: goto_0
.end method

8. RomControl add
<com.wubydax.romcontrol.v2.prefs.MyListPreference android: entries = "@ array / recents_view_corners_radius_entries" android: title = "application sketches Angles" android: key = "recents_view_corners_radius" android: defaultValue = "2" android: entryValues ​​= "@ array / recents_view_corners_radius_values ​​"app: packageNameToKill =" com.android.systemui "app: isSilent =" false "/>

and an array of
<string-array name = "recents_view_corners_radius_entries">
<item>without rounding</ item>
<item>small rounding</ item>
<item>Average rounding (default)</ item>
<item>large rounding</ item>
</ string-array>
<string-array name = "recents_view_corners_radius_values">
<item>0</ item>
<item>1</ item>
<item>2</ item>
<item>3</ item>
</ string-array>

9. All: yes2:

Post has been editedmpal - 27.05.18, 21:56



Rep: (7355)
Button functions with a choice of settings.android 8.x.x

screenshots:
Attached Image
Attached Image
Attached Image

Author : sagitt67
Firmware : Any custom .
Description :
Settings Management:
System:
Button functions:
- flashlight volume control buttons:
* Flashlight with the screen off.
- Bixby button:
* Select an action for the button:
*** Default
*** Lantern
*** Screenshot
*** Sound Mode
*** Screenshot region
*** Closing applications
*** Menu
*** Recent Apps
*** Menu off
- Key Recent:
* Select an action for the button:
*** Default
*** Lantern
*** Screenshot
*** Recent Apps
*** Screenshot region
*** Closing applications
*** Menu
*** Menu off
- Home button:
* Select an action for the button:
*** Default
*** Lantern
*** Screenshot
*** Recent Apps
*** Screenshot region
*** Closing applications
*** Menu off
- Back button:
* Select an action for the button:
*** Default
*** Lantern
*** Screenshot
*** Recent Apps
*** Screenshot region
*** Closing applications
*** Menu
*** off Menu [/ b]

edit services.jar
Copy the file from the downloaded archiveservices.jar.zip
services / smali_classes / com / android / server / policy / PhoneWindowManager $ SettingsObserver.smali
a method of adding a line (+++) to (+++)
# virtual methods
.method observe () V
.registers 5

const / 4 v3, 0x0

const / 4 v2, -0x1

iget-object v1, p0, Lcom / android / server / policy / PhoneWindowManager $ SettingsObserver; ->this $ 0: Lcom / android / server / policy / PhoneWindowManager;

iget-object v1, v1, Lcom / android / server / policy / PhoneWindowManager; ->mContext: Landroid / content / Context;

invoke-virtual {v1}, Landroid / content / Context; ->getContentResolver () Landroid / content / ContentResolver;

move-result-object v0

+++ const-string / jumbo v1, "tweaks_custom_recents"

invoke-static {v1}, Landroid / provider / Settings $ System; ->getUriFor (Ljava / lang / String;) Landroid / net / Uri;

move-result-object v1

invoke-virtual {v0, v1, v3, p0, v2}, Landroid / content / ContentResolver; ->registerContentObserver (Landroid / net / Uri; ZLandroid / database / ContentObserver; I) V

const-string / jumbo v1, "tweaks_custom_back"

invoke-static {v1}, Landroid / provider / Settings $ System; ->getUriFor (Ljava / lang / String;) Landroid / net / Uri;

move-result-object v1

invoke-virtual {v0, v1, v3, p0, v2}, Landroid / content / ContentResolver; ->registerContentObserver (Landroid / net / Uri; ZLandroid / database / ContentObserver; I) V

const-string / jumbo v1, "tweaks_custom_home"

invoke-static {v1}, Landroid / provider / Settings $ System; ->getUriFor (Ljava / lang / String;) Landroid / net / Uri;

move-result-object v1

invoke-virtual {v0, v1, v3, p0, v2}, Landroid / content / ContentResolver; ->registerContentObserver (Landroid / net / Uri; ZLandroid / database / ContentObserver; I) V +++

const-string / jumbo v1, "end_button_behavior"

services / smali_classes / com / android / server / policy / PhoneWindowManager.smali
added and removed with the replacement line
.class public Lcom / android / server / policy / PhoneWindowManager;
.super ljava / lang / Object;
.source "PhoneWindowManager.java"

# interfaces
.implements Landroid / view / WindowManagerPolicy;


# annotations
.annotation system Ldalvik / annotation / MemberClasses;
value = {
Lcom / android / server / policy / PhoneWindowManager $ 10 ;,
Lcom / android / server / policy / PhoneWindowManager $ 11 ;,
Lcom / android / server / policy / PhoneWindowManager $ 12 ;,
Lcom / android / server / policy / PhoneWindowManager $ 13 ;,
Lcom / android / server / policy / PhoneWindowManager $ 14 ;,
Lcom / android / server / policy / PhoneWindowManager $ 1 ;,
Lcom / android / server / policy / PhoneWindowManager $ 2 ;,
Lcom / android / server / policy / PhoneWindowManager $ 3 ;,
Lcom / android / server / policy / PhoneWindowManager $ 4 ;,
Lcom / android / server / policy / PhoneWindowManager $ 5 ;,
Lcom / android / server / policy / PhoneWindowManager $ 6 ;,
Lcom / android / server / policy / PhoneWindowManager $ 7 ;,
Lcom / android / server / policy / PhoneWindowManager $ 8 ;,
Lcom / android / server / policy / PhoneWindowManager $ 9 ;,
Lcom / android / server / policy / PhoneWindowManager $ HdmiControl ;,
Lcom / android / server / policy / PhoneWindowManager $ HideNavInputEventReceiver ;,
Lcom / android / server / policy / PhoneWindowManager $ MyOrientationListener ;,
Lcom / android / server / policy / PhoneWindowManager $ MyWakeGestureListener ;,
Lcom / android / server / policy / PhoneWindowManager $ PolicyHandler ;,
Lcom / android / server / policy / PhoneWindowManager $ ScreenLockTimeout ;,
Lcom / android / server / policy / PhoneWindowManager $ ScreenshotRunnable ;,
- Lcom / android / server / policy / PhoneWindowManager $ SettingsObserver;
+ Lcom / android / server / policy / PhoneWindowManager $ SettingsObserver ;,
+ Lcom / android / server / policy / PhoneWindowManager $ KillApp;
}
.end annotation


# static fields
+ .Field private static mFlashlightOn: Z

+ .Field static mLongPressBackAction: I

+ .Field static mLongPressHomeAction: I


# instance fields
.field mKHandler: Landroid / os / Handler;

.field mKillProcess: Ljava / lang / Runnable;

.field mLongPressRecentsAction: I

method of adding the end line.method public constructor<init>() V from (+++) to (+++)
iput-object v0, p0, Lcom / android / server / policy / PhoneWindowManager; ->mScreenLockTimeout: Lcom / android / server / policy / PhoneWindowManager $ ScreenLockTimeout;

+++ new-instance v0, Landroid / os / Handler;

invoke-direct {v0}, Landroid / os / Handler; -><init>() V

iput-object v0, p0, Lcom / android / server / policy / PhoneWindowManager; ->mKHandler: Landroid / os / Handler;

new-instance v0, Lcom / android / server / policy / PhoneWindowManager $ KillApp;

invoke-direct {v0, p0}, Lcom / android / server / policy / PhoneWindowManager $ KillApp; -><init>(Lcom / android / server / policy / PhoneWindowManager;) V

iput-object v0, p0, Lcom / android / server / policy / PhoneWindowManager; ->mKillProcess: Ljava / lang / Runnable; +++

return-void
.end method

replace method on
.method private backLongPress () V
.registers 4

const / 4 v1, 0x1

iput-boolean v1, p0, Lcom / android / server / policy / PhoneWindowManager; ->mBackKeyHandled: Z

sget v1, Lcom / android / server / policy / PhoneWindowManager; ->mLongPressBackAction: I

const / 4 v2, 0x1

invoke-virtual {p0, v1, v2}, Lcom / android / server / policy / PhoneWindowManager; ->customActions (II) V

return-void
.end method

replace method on
.method private hasLongPressOnBackBehavior () Z
.registers 3

const / 4 v0, 0x1

return v0
.end method

a method of adding a line (+++) to (+++) and one register
.method handleLongPressOnHome (I) V
6 +1 .registers

+++ goto: goto_next

: cond_next
const / 4 v3, 0x2

invoke-virtual {p0, v4, v3}, Lcom / android / server / policy / PhoneWindowManager; ->customActions (II) V

const / 4 v0, 0x1

iput-boolean v0, p0, Lcom / android / server / policy / PhoneWindowManager; ->mHomeConsumed: Z

return-void

: goto_next
sget v4, Lcom / android / server / policy / PhoneWindowManager; ->mLongPressHomeAction: I

if-nez v4,: cond_next +++

const / 4 v3, 0x0

const / 4 v2, 0x0

iget-object v1, p0, Lcom / android / server / policy / PhoneWindowManager; ->mSPWM: Lcom / android / server / policy / IPhoneWindowManagerBridge;
...

Adding row in the method
.method public updateSettings () V
.registers 15

const / 4 v8, 0x2

const / 4 v9, 0x1

+ Invoke-virtual {p0}, Lcom / android / server / policy / PhoneWindowManager; ->longPressActions () V

iget-object v10, p0, Lcom / android / server / policy / PhoneWindowManager; ->mContext: Landroid / content / Context;

add methods at the end of the file
.method public activateFlashlight () V
.registers 11

sget-boolean v0, Lcom / android / server / policy / PhoneWindowManager; ->mFlashlightOn: Z

if-nez v0,: cond_6

const / 4 v2, 0x1

goto: goto_7

: cond_6
const / 4 v2, 0x0

: goto_7
sput-boolean v2, Lcom / android / server / policy / PhoneWindowManager; ->mFlashlightOn: Z

invoke-static {v2}, Lcom / samsung / android / hardware / SemHardwareInterface; ->setTorchLight (Z) V

return-void
.end method

.method public customActions (II) V
.registers 14

const / 4 v2, 0x0

const / 4 v3, 0x1

const / 4 v4, 0x2

const / 4 v5, 0x3

const / 4 v6, 0x4

const / 4 v7, 0x5

const / 4 v8, 0x6

const / 4 v9, 0x7

const / 16 v10, 0x8

if-eq p1, v2,: cond_3a

if-eq p1, v3,: cond_1c

if-eq p1, v4,: cond_20

if-eq p1, v5,: cond_32

if-eq p1, v6,: cond_24

if-eq p1, v7,: cond_28

if-eq p1, v8,: cond_2c

if-eq p1, v9,: cond_36

if-eq p1, v10,: cond_3a

: cond_1c
invoke-virtual {p0}, Lcom / android / server / policy / PhoneWindowManager; ->activateFlashlight () V

goto: goto_3a

: cond_20
invoke-virtual {p0}, Lcom / android / server / policy / PhoneWindowManager; ->takeFullScreenshot () V

goto: goto_3a

: cond_24
invoke-virtual {p0}, Lcom / android / server / policy / PhoneWindowManager; ->takePartialScreenshot () V

goto: goto_3a

: cond_28
invoke-virtual {p0}, Lcom / android / server / policy / PhoneWindowManager; ->doKillApp () V

goto: goto_3a

: cond_2c
if-eq p2, v5,: cond_3a

invoke-virtual {p0}, Lcom / android / server / policy / PhoneWindowManager; ->sendMenuKey () V

goto: goto_3a

: cond_32
invoke-virtual {p0}, Lcom / android / server / policy / PhoneWindowManager; ->toggleRecentApps () V

goto: goto_3a

: cond_36
invoke-virtual {p0}, Lcom / android / server / policy / PhoneWindowManager; ->showGlobalActionsInternal () V

goto: goto_3a

: cond_3a
: goto_3a
return-void
.end method

.method public doKillApp () V
.registers 4

invoke-virtual {p0}, Lcom / android / server / policy / PhoneWindowManager; ->isScreenOn () Z

move-result v0

if-eqz v0,: cond_13

invoke-virtual {p0}, Lcom / android / server / policy / PhoneWindowManager; ->isKeyguardLocked () Z

move-result v1

if-nez v1,: cond_13

iget-object v2, p0, Lcom / android / server / policy / PhoneWindowManager; ->mKHandler: Landroid / os / Handler;

iget-object v0, p0, Lcom / android / server / policy / PhoneWindowManager; ->mKillProcess: Ljava / lang / Runnable;

invoke-virtual {v2, v0}, Landroid / os / Handler; ->post (Ljava / lang / Runnable;) Z

: cond_13
return-void
.end method

.method public longPressActions () V
.registers 4

iget-object v0, p0, Lcom / android / server / policy / PhoneWindowManager; ->mContext: Landroid / content / Context;

invoke-virtual {v0}, Landroid / content / Context; ->getContentResolver () Landroid / content / ContentResolver;

move-result-object v0

const-string / jumbo v1, "tweaks_custom_home"

const / 4 v2, 0x0

invoke-static {v0, v1, v2}, Landroid / provider / Settings $ System; ->getInt (Landroid / content / ContentResolver; Ljava / lang / String; I) I

move-result v1

sput v1, Lcom / android / server / policy / PhoneWindowManager; ->mLongPressHomeAction: I

const-string / jumbo v1, "tweaks_custom_back"

const / 4 v2, 0x0

invoke-static {v0, v1, v2}, Landroid / provider / Settings $ System; ->getInt (Landroid / content / ContentResolver; Ljava / lang / String; I) I

move-result v1

sput v1, Lcom / android / server / policy / PhoneWindowManager; ->mLongPressBackAction: I

const-string / jumbo v1, "tweaks_custom_recents"

const / 4 v2, 0x0

invoke-static {v0, v1, v2}, Landroid / provider / Settings $ System; ->getInt (Landroid / content / ContentResolver; Ljava / lang / String; I) I

move-result v1

iput v1, p0, Lcom / android / server / policy / PhoneWindowManager; ->mLongPressRecentsAction: I

return-void
.end method

.method public sendMenuKey () V
.registers 4

: try_start_0
new-instance v1, Landroid / app / Instrumentation;

invoke-direct {v1}, Landroid / app / Instrumentation; -><init>() V

const / 16 v2, 0x52

invoke-virtual {v1, v2}, Landroid / app / Instrumentation; ->sendKeyDownUpSync (I) V
: try_end_a
.catch Ljava / lang / Exception; {: Try_start_0 ..: try_end_a}: catch_b

: goto_a
return-void

: catch_b
move-exception v0

invoke-virtual {v0}, Ljava / lang / Exception; ->printStackTrace () V

goto: goto_a
.end method

.method public takeFullScreenshot () V
.registers 2

const / 4 v0, 0x1

invoke-direct {p0, v0}, Lcom / android / server / policy / PhoneWindowManager; ->takeScreenshot (I) V

return-void
.end method

.method public takePartialScreenshot () V
.registers 2

const / 4 v0, 0x2

invoke-direct {p0, v0}, Lcom / android / server / policy / PhoneWindowManager; ->takeScreenshot (I) V

return-void
.end method

edit samsung-services.jar
Copy the files from the downloaded archive samsung-services.jar.zip
samsung-services / smali_classes / com / android / server / policy / SamsungPhoneWindowManager $ SettingsObserver.smali
a method of adding a line (+++) to (+++)
# virtual methods
.method observe () V
.registers 7

const / 4 v5, -0x2

const / 4 v4, -0x1

const / 4 v3, 0x0

iget-object v1, p0, Lcom / android / server / policy / SamsungPhoneWindowManager $ SettingsObserver; ->the this $ 0: Lcom / android / server / policy / SamsungPhoneWindowManager;

iget-object v1, v1, Lcom / android / server / policy / SamsungPhoneWindowManager; ->mContext: Landroid / content / Context;

invoke-virtual {v1}, Landroid / content / Context; ->getContentResolver () Landroid / content / ContentResolver;

move-result-object v0

+++ const-string / jumbo v1, "tweaks_custom_bixby"

invoke-static {v1}, Landroid / provider / Settings $ System; ->getUriFor (Ljava / lang / String;) Landroid / net / Uri;

move-result-object v1

invoke-virtual {v0, v1, v3, p0, v4}, Landroid / content / ContentResolver; ->registerContentObserver (Landroid / net / Uri; ZLandroid / database / ContentObserver; I) V +++

const-string / jumbo v1, "double_tab_launch"

samsung-services / smali / com / android / server / policy / SamsungPhoneWindowManager.smali
added and removed with the replacement line
.class public Lcom / android / server / policy / SamsungPhoneWindowManager;
.super ljava / lang / Object;
.source "SamsungPhoneWindowManager.java"

# interfaces
.implements Lcom / android / server / policy / IPhoneWindowManagerBridge;


# annotations
.annotation system Ldalvik / annotation / MemberClasses;
value = {
Lcom / android / server / policy / SamsungPhoneWindowManager $ 10 ;,
Lcom / android / server / policy / SamsungPhoneWindowManager $ 11 ;,
Lcom / android / server / policy / SamsungPhoneWindowManager $ 12 ;,
Lcom / android / server / policy / SamsungPhoneWindowManager $ 13 ;,
Lcom / android / server / policy / SamsungPhoneWindowManager $ 14 ;,
Lcom / android / server / policy / SamsungPhoneWindowManager $ 15 ;,
Lcom / android / server / policy / SamsungPhoneWindowManager $ 16 ;,
Lcom / android / server / policy / SamsungPhoneWindowManager $ 17 ;,
Lcom / android / server / policy / SamsungPhoneWindowManager $ 18 ;,
Lcom / android / server / policy / SamsungPhoneWindowManager $ 19 ;,
Lcom / android / server / policy / SamsungPhoneWindowManager $ 1 ;,
Lcom / android / server / policy / SamsungPhoneWindowManager $ 20 ;,
Lcom / android / server / policy / SamsungPhoneWindowManager $ 21 ;,
Lcom / android / server / policy / SamsungPhoneWindowManager $ 22 ;,
Lcom / android / server / policy / SamsungPhoneWindowManager $ 23 ;,
Lcom / android / server / policy / SamsungPhoneWindowManager $ 2 ;,
Lcom / android / server / policy / SamsungPhoneWindowManager $ 3 ;,
Lcom / android / server / policy / SamsungPhoneWindowManager $ 4 ;,
Lcom / android / server / policy / SamsungPhoneWindowManager $ 5 ;,
Lcom / android / server / policy / SamsungPhoneWindowManager $ 6 ;,
Lcom / android / server / policy / SamsungPhoneWindowManager $ 7 ;,
Lcom / android / server / policy / SamsungPhoneWindowManager $ 8 ;,
Lcom / android / server / policy / SamsungPhoneWindowManager $ 9 ;,
Lcom / android / server / policy / SamsungPhoneWindowManager $ ForceImmersiveModeObserver ;,
Lcom / android / server / policy / SamsungPhoneWindowManager $ SFinderLaunchPolicy ;,
Lcom / android / server / policy / SamsungPhoneWindowManager $ SamsungPolicyHandler ;,
Lcom / android / server / policy / SamsungPhoneWindowManager $ ScreenshotRunnable ;,
Lcom / android / server / policy / SamsungPhoneWindowManager $ ServiceConnectionForCaptureEffect ;,
Lcom / android / server / policy / SamsungPhoneWindowManager $ SettingsObserver ;,
Lcom / android / server / policy / SamsungPhoneWindowManager $ TakeScreenShotRunnable ;,
- Lcom / android / server / policy / SamsungPhoneWindowManager $ WakeupPreventionObserver;
+ Lcom / android / server / policy / SamsungPhoneWindowManager $ WakeupPreventionObserver ;,
+ Lcom / android / server / policy / SamsungPhoneWindowManager $ KillApp;
}
.end annotation


# static fields
+ .Field private static mCustomBixby: Z

+ .Field private static mFlashlightOn: Z

+ .Field private static mRingMode: I


# instance fields
.field mKHandler: Landroid / os / Handler;

.field mKillProcess: Ljava / lang / Runnable;

method of adding the end line.method public constructor<init>() V from (+++) to (+++)
iput-object v0, p0, Lcom / android / server / policy / SamsungPhoneWindowManager; ->mProximytyChangeReceiver: Landroid / content / BroadcastReceiver;

+++ new-instance v0, Landroid / os / Handler;

invoke-direct {v0}, Landroid / os / Handler; -><init>() V

iput-object v0, p0, Lcom / android / server / policy / SamsungPhoneWindowManager; ->mKHandler: Landroid / os / Handler;

new-instance v0, Lcom / android / server / policy / SamsungPhoneWindowManager $ KillApp;

invoke-direct {v0, p0}, Lcom / android / server / policy / SamsungPhoneWindowManager $ KillApp; -><init>(Lcom / android / server / policy / SamsungPhoneWindowManager;) V

iput-object v0, p0, Lcom / android / server / policy / SamsungPhoneWindowManager; ->mKillProcess: Ljava / lang / Runnable; +++

return-void
.end method

add line method in (+) and from (+++) to (+++), and one register
.method public handleLongPressOnRecent () V
.registers 10 +1

const / 4 v7, 0x1

+++ const / 4 v9, 0x6

iget-object v5, p0, Lcom / android / server / policy / SamsungPhoneWindowManager; ->mPWM: Lcom / android / server / policy / PhoneWindowManager;

iget v4, v5, Lcom / android / server / policy / PhoneWindowManager; ->mLongPressRecentsAction: I

if-eqz v4,: cond_next

if-eq v4, v9,: cond_next1

: goto_next1
const / 4 v2, 0x3

invoke-virtual {v5, v4, v2}, Lcom / android / server / policy / PhoneWindowManager; ->customActions (II) V

goto: goto_next

: Cond_next +++
invoke-virtual {p0}, Lcom / android / server / policy / SamsungPhoneWindowManager; ->isRecentAppStart () Z

move-result v6

if-eqz v6,: cond_a

+: goto_next
iput-boolean v7, p0, Lcom / android / server / policy / SamsungPhoneWindowManager; ->mRecentConsumed: Z
...
...
iget-boolean v6, p0, Lcom / android / server / policy / SamsungPhoneWindowManager; ->mHasFakeMenuKeyRecent: Z

if-eqz v6,: cond_42

const / 16 v6, 0x52

invoke-direct {p0, v6}, Lcom / android / server / policy / SamsungPhoneWindowManager; ->injectionKeyEvent (I) V

return-void

+++: cond_next1
const / 16 v1, 0x52

invoke-direct {p0, v1}, Lcom / android / server / policy / SamsungPhoneWindowManager; ->injectionKeyEvent (I) V

goto: goto_next1 +++

: cond_42
iget-object v6, p0, Lcom / android / server / policy / SamsungPhoneWindowManager; ->mPWM: Lcom / android / server / policy / PhoneWindowManager;

invoke-virtual {v6}, Lcom / android / server / policy / PhoneWindowManager; ->getStatusBarManagerInternal () Lcom / android / server / statusbar / StatusBarManagerInternal;
[Color = "# 000000"] in the end of the method delete the row (-) [/ color]
: cond_86
- invoke-static {}, Lcom / android / server / policy / PhoneWindowManager; ->awakenDreams () V

invoke-interface {v5}, Lcom / android / server / statusbar / StatusBarManagerInternal; ->toggleSplitScreen () V

goto: goto_7f

: catch_8d
move-exception v2

goto: goto_74
.end method


the method replace (#), add line from (+++) to (+++)
.method public interceptKeyBeforeDispatching (Landroid / view / WindowManagerPolicy $ WindowState; Landroid / view / KeyEvent; I) J
...
invoke-static / range {v55 .. v55}, Lcom / android / server / policy / SamsungPolicyProperties; ->isBlockKey (Landroid / content / Context;) Z

move-result v55

# If-eqz v55,: cond_cda change in the if-eqz v55,: cond_next1

: cond_cda
const-string / jumbo v55, "SamsungPhoneWindowManager"

const-string / jumbo v56, "no action about wink"

invoke-static / range {v55 .. v56}, Landroid / util / Slog; ->d (Ljava / lang / String; Ljava / lang / String;) I

const-wide / 16 v56, -0x1

return-wide v56

#: Cond_cda change to: cond_next
+++ const-string / jumbo v55, "grx"

const-string / jumbo v56, "bixby remapped"

invoke-static / range {v55 .. v56}, Landroid / util / Slog; ->d (Ljava / lang / String; Ljava / lang / String;) I

const-wide / 16 v56, -0x1

return-wide v56

: Cond_next1 +++
move-object / from16 v0, p0

iget-object v0, v0, Lcom / android / server / policy / SamsungPhoneWindowManager; ->mSystemKeyManager: Lcom / android / server / policy / SystemKeyManager;

move-object / from16 v55, v0

move-object / from16 v0, v55

move / from16 v1, v35

invoke-virtual {v0, v1}, Lcom / android / server / policy / SystemKeyManager; ->isSystemKeyEventRequested (I) Z

move-result v55

if-nez v55,: cond_175

invoke-virtual / range {p2 .. p2}, Landroid / view / KeyEvent; ->getRepeatCount () I

move-result v55

if-nez v55,: cond_d3d

+++ move-object / from16 v0, p0

invoke-virtual {v0}, Lcom / android / server / policy / SamsungPhoneWindowManager; ->customBixbyActions () V

sget-boolean v0, Lcom / android / server / policy / SamsungPhoneWindowManager; ->mCustomBixby: Z

if-nez v0,: cond_next +++

const / 16 v55, 0x0

move / from16 v0, v55

move-object / from16 v1, p0

iput-boolean v0, v1, Lcom / android / server / policy / SamsungPhoneWindowManager; ->mIsBixbyConsumed: Z
...

add methods at the end of the file
.method public activateFlashlight () V
.registers 11

sget-boolean v0, Lcom / android / server / policy / SamsungPhoneWindowManager; ->mFlashlightOn: Z

if-nez v0,: cond_6

const / 4 v2, 0x1

goto: goto_7

: cond_6
const / 4 v2, 0x0

: goto_7
sput-boolean v2, Lcom / android / server / policy / SamsungPhoneWindowManager; ->mFlashlightOn: Z

invoke-static {v2}, Lcom / samsung / android / hardware / SemHardwareInterface; ->setTorchLight (Z) V

return-void
.end method

.method public customBixbyActions () V
.registers 13

iget-object v0, p0, Lcom / android / server / policy / SamsungPhoneWindowManager; ->mContext: Landroid / content / Context;

invoke-virtual {v0}, Landroid / content / Context; ->getContentResolver () Landroid / content / ContentResolver;

move-result-object v0

const-string / jumbo v1, "tweaks_custom_bixby"

const / 4 v2, 0x0

invoke-static {v0, v1, v2}, Landroid / provider / Settings $ System; ->getInt (Landroid / content / ContentResolver; Ljava / lang / String; I) I

move-result v1

const / 4 v3, 0x1

const / 4 v4, 0x2

const / 4 v5, 0x3

const / 4 v6, 0x4

const / 4 v7, 0x5

const / 4 v8, 0x6

const / 4 v9, 0x7

const / 16 v10, 0x8

const / 16 v11, 0x8

if-eq v1, v2,: cond_6f

if-eq v1, v3,: cond_2d

if-eq v1, v4,: cond_33

if-eq v1, v5,: cond_51

if-eq v1, v6,: cond_3b

if-eq v1, v7,: cond_43

if-eq v1, v8,: cond_49

if-eq v1, v9,: cond_57

if-eq v1, v10,: cond_5f

if-eq v1, v11,: cond_67

: cond_2d
sput-boolean v3, Lcom / android / server / policy / SamsungPhoneWindowManager; ->mCustomBixby: Z

invoke-virtual {p0}, Lcom / android / server / policy / SamsungPhoneWindowManager; ->activateFlashlight () V

goto: goto_71

: cond_33
sput-boolean v3, Lcom / android / server / policy / SamsungPhoneWindowManager; ->mCustomBixby: Z

iget-object v0, p0, Lcom / android / server / policy / SamsungPhoneWindowManager; ->mPWM: Lcom / android / server / policy / PhoneWindowManager;

invoke-virtual {v0}, Lcom / android / server / policy / PhoneWindowManager; ->takeFullScreenshot () V

goto: goto_71

: cond_3b
sput-boolean v3, Lcom / android / server / policy / SamsungPhoneWindowManager; ->mCustomBixby: Z

iget-object v0, p0, Lcom / android / server / policy / SamsungPhoneWindowManager; ->mPWM: Lcom / android / server / policy / PhoneWindowManager;

invoke-virtual {v0}, Lcom / android / server / policy / PhoneWindowManager; ->takePartialScreenshot () V

goto: goto_71

: cond_43
sput-boolean v3, Lcom / android / server / policy / SamsungPhoneWindowManager; ->mCustomBixby: Z

invoke-virtual {p0}, Lcom / android / server / policy / SamsungPhoneWindowManager; ->doKillApp () V

goto: goto_71

: cond_49
sput-boolean v3, Lcom / android / server / policy / SamsungPhoneWindowManager; ->mCustomBixby: Z

const / 16 v0, 0x52

invoke-direct {p0, v0}, Lcom / android / server / policy / SamsungPhoneWindowManager; ->injectionKeyEvent (I) V

goto: goto_71

: cond_51
sput-boolean v3, Lcom / android / server / policy / SamsungPhoneWindowManager; ->mCustomBixby: Z

invoke-virtual {p0}, Lcom / android / server / policy / SamsungPhoneWindowManager; ->switchRingMode () V

goto: goto_71

: cond_57
sput-boolean v3, Lcom / android / server / policy / SamsungPhoneWindowManager; ->mCustomBixby: Z

iget-object v0, p0, Lcom / android / server / policy / SamsungPhoneWindowManager; ->mPWM: Lcom / android / server / policy / PhoneWindowManager;

invoke-virtual {v0}, Lcom / android / server / policy / PhoneWindowManager; ->toggleRecentApps () V

goto: goto_71

: cond_5f
sput-boolean v3, Lcom / android / server / policy / SamsungPhoneWindowManager; ->mCustomBixby: Z

iget-object v0, p0, Lcom / android / server / policy / SamsungPhoneWindowManager; ->mPWM: Lcom / android / server / policy / PhoneWindowManager;

invoke-virtual {v0}, Lcom / android / server / policy / PhoneWindowManager; ->showGlobalActionsInternal () V

goto: goto_71

: cond_67
sput-boolean v3, Lcom / android / server / policy / SamsungPhoneWindowManager; ->mCustomBixby: Z

iget-object v0, p0, Lcom / android / server / policy / SamsungPhoneWindowManager; ->mPWM: Lcom / android / server / policy / PhoneWindowManager;

invoke-virtual {v0}, Lcom / android / server / policy / PhoneWindowManager; ->sendMenuKey () V

goto: goto_71

: cond_6f
sput-boolean v2, Lcom / android / server / policy / SamsungPhoneWindowManager; ->mCustomBixby: Z

: goto_71
return-void
.end method

.method public doKillApp () V
.registers 4

iget-object v1, p0, Lcom / android / server / policy / SamsungPhoneWindowManager; ->mPWM: Lcom / android / server / policy / PhoneWindowManager;

invoke-virtual {v1}, Lcom / android / server / policy / PhoneWindowManager; ->isScreenOn () Z

move-result v0

if-eqz v0,: cond_15

invoke-virtual {v1}, Lcom / android / server / policy / PhoneWindowManager; ->isKeyguardLocked () Z

move-result v1

if-nez v1,: cond_15

iget-object v2, p0, Lcom / android / server / policy / SamsungPhoneWindowManager; ->mKHandler: Landroid / os / Handler;

iget-object v0, p0, Lcom / android / server / policy / SamsungPhoneWindowManager; ->mKillProcess: Ljava / lang / Runnable;

invoke-virtual {v2, v0}, Landroid / os / Handler; ->post (Ljava / lang / Runnable;) Z

: cond_15
return-void
.end method

.method public switchRingMode () V
.registers 4

invoke-virtual {p0}, Lcom / android / server / policy / SamsungPhoneWindowManager; ->getAudioManager () Landroid / media / AudioManager;

move-result-object v0

invoke-virtual {v0}, Landroid / media / AudioManager; ->getRingerMode () I

move-result v0

sput v0, Lcom / android / server / policy / SamsungPhoneWindowManager; ->mRingMode: I

sget v0, Lcom / android / server / policy / SamsungPhoneWindowManager; ->mRingMode: I

const / 4 v1, 0x1

if-nez v0,: cond_17

invoke-virtual {p0}, Lcom / android / server / policy / SamsungPhoneWindowManager; ->getAudioManager () Landroid / media / AudioManager;

move-result-object v0

invoke-virtual {v0, v1}, Landroid / media / AudioManager; ->setRingerMode (I) V

goto: goto_30

: cond_17
sget v0, Lcom / android / server / policy / SamsungPhoneWindowManager; ->mRingMode: I

const / 4 v2, 0x2

if-ne v0, v1,: cond_24

invoke-virtual {p0}, Lcom / android / server / policy / SamsungPhoneWindowManager; ->getAudioManager () Landroid / media / AudioManager;

move-result-object v0

invoke-virtual {v0, v2}, Landroid / media / AudioManager; ->setRingerMode (I) V

goto: goto_30

: cond_24
sget v0, Lcom / android / server / policy / SamsungPhoneWindowManager; ->mRingMode: I

if-ne v0, v2,: cond_30

invoke-virtual {p0}, Lcom / android / server / policy / SamsungPhoneWindowManager; ->getAudioManager () Landroid / media / AudioManager;

move-result-object v0

const / 4 v1,0x0

invoke-virtual {v0, v1}, Landroid / media / AudioManager; ->setRingerMode (I) V

: cond_30
: goto_30
return-void
.end method

edit ROMControl v 2.x
Copy the image from the downloaded arzhivaROMControl.zip
ROMControl / res / values ​​/ arrays.xml
Add lines at the end of the file
<string-array name = "torchlight_timeout_entries">
<item>5 second</ item>
<item>10 Seconds</ item>
<item>15 seconds</ item>
<item>30 seconds</ item>
<item>1 minute</ item>
<item>2 minutes</ item>
<item>5 minutes</ item>
<item>10 minutes</ item>
</ string-array>
<string-array name = "torchlight_timeout_values">
<item>5000</ item>
<item>10000</ item>
<item>15000</ item>
<item>30000</ item>
<item>60000</ item>
<item>120000</ item>
<item>300000</ item>
<item>600000</ item>
</ string-array>
<string-array name = "tweaks_custom_bixby_entries">
<item>Default</ item>
<item>Torch</ item>
<item>Screenshot</ item>
<item>sound mode</ item>
<item>Screenshot region</ item>
<item>Application closure</ item>
<item>Menu</ item>
<item>Recent Applications</ item>
<item>Shutdown menu</ item>
</ string-array>
<string-array name = "tweaks_custom_bixby_values">
<item>0</ item>
<item>1</ item>
<item>2</ item>
<item>3</ item>
<item>4</ item>
<item>5</ item>
<item>6</ item>
<item>7</ item>
<item>8</ item>
</ string-array>
<string-array name = "tweaks_custom_back_entries">
<item>Default</ item>
<item>Torch</ item>
<item>Screenshot</ item>
<item>Recent Applications</ item>
<item>Screenshot region</ item>
<item>Application closure</ item>
<item>Menu</ item>
<item>Shutdown menu</ item>
</ string-array>
<string-array name = "tweaks_custom_back_values">
<item>0</ item>
<item>1</ item>
<item>2</ item>
<item>3</ item>
<item>4</ item>
<item>5</ item>
<item>6</ item>
<item>7</ item>
</ string-array>
<string-array name = "tweaks_custom_home_entries">
<item>Default</ item>
<item>Torch</ item>
<item>Screenshot</ item>
<item>Recent Applications</ item>
<item>Screenshot region</ item>
<item>Application closure</ item>
<item>Shutdown menu</ item>
</ string-array>
<string-array name = "tweaks_custom_home_values">
<item>0</ item>
<item>1</ item>
<item>2</ item>
<item>3</ item>
<item>4</ item>
<item>5</ item>
<item>7</ item>
</ string-array>
<string-array name = "tweaks_custom_recents_entries">
<item>Default</ item>
<item>Torch</ item>
<item>Screenshot</ item>
<item>Recent Applications</ item>
<item>Screenshot region</ item>
<item>Application closure</ item>
<item>Menu</ item>
<item>Shutdown menu</ item>
</ string-array>
<string-array name = "tweaks_custom_recents_values">
<item>0</ item>
<item>1</ item>
<item>2</ item>
<item>3</ item>
<item>4</ item>
<item>5</ item>
<item>6</ item>
<item>7</ item>
</ string-array>

ROMControl / res / xml / framework_prefs.xml
Or add a line in a convenient location
<PreferenceScreen android: title = "Button Functions" android: summary = "Configure button">
<PreferenceCategory android: title = "Button Functions" />
<PreferenceScreen android: icon = "@ drawable / ic_volume" android: title = "Volume Buttons" android: summary = "Adjust the volume button">
<PreferenceCategory android: title = "flashlight volume control buttons" />
<com.wubydax.romcontrol.v2.prefs.MySwitchPreference android: title = "Flashlight when the screen is" android: key = "torchlight_enable" android: defaultValue = "false" android: summaryOn = "ON." android: summaryOff = "Off." />
<com.wubydax.romcontrol.v2.prefs.MyListPreference android: entries = "@ array / torchlight_timeout_entries" android: title = "Hours flashlight" android: key = "torchlight_timeout" android: defaultValue = "30000" android: entryValues ​​= "@ array / torchlight_timeout_values ​​"/>
</ PreferenceScreen>
<PreferenceScreen android: icon = "@ drawable / ic_bixby" android: title = "Bixby Button" android: summary = "Customize button Bixby">
<PreferenceCategory android: title = "Bixby Button" />
<com.wubydax.romcontrol.v2.prefs.MyListPreference android: entries = "@ array / tweaks_custom_bixby_entries" android: title = "Select an action for the button" android: key = "tweaks_custom_bixby" android: summary = "Select Action" android: defaultValue = "0" android: entryValues ​​= "@ array / tweaks_custom_bixby_values" />
</ PreferenceScreen>
<PreferenceScreen android: icon = "@ drawable / ic_recents" android: title = "Recent button" android: summary = "Customize button Recent">
<PreferenceCategory android: title = "Recent button" />
<com.wubydax.romcontrol.v2.prefs.MyListPreference android: entries = "@ array / tweaks_custom_recents_entries" android: title = "Select an action for the button" android: key = "tweaks_custom_recents" android: summary = "Select Action" android: defaultValue = "0" android: entryValues ​​= "@ array / tweaks_custom_recents_values" />
</ PreferenceScreen>
<PreferenceScreen android: icon = "@ drawable / ic_home" android: title = "Home Button" android: summary = "Set Home button">
<PreferenceCategory android: title = "Home Button" />
<com.wubydax.romcontrol.v2.prefs.MyListPreference android: entries = "@ array / tweaks_custom_home_entries" android: title = "Select an action for the button" android: key = "tweaks_custom_home" android: summary = "Select Action" android: defaultValue = "0" android: entryValues ​​= "@ array / tweaks_custom_home_values" />
</ PreferenceScreen>
<PreferenceScreen android: icon = "@ drawable / ic_back" android: title = "Back button" android: summary = "Customize the Back button">
<PreferenceCategory android: title = "Back Button" />
<com.wubydax.romcontrol.v2.prefs.MyListPreference android: entries = "@ array / tweaks_custom_back_entries" android: title = "Select an action for the button" android: key = "tweaks_custom_back" android: summary = "% s" android: defaultValue = "0" android: entryValues ​​= "@ array / tweaks_custom_back_values" />
</ PreferenceScreen>
</ PreferenceScreen>

Download archives: Attached fileservices.jar.zip (4.6 KB)
Attached filesamsung-services.jar.zip(4.73 KB)
Attached fileRomControl.apk.zip(82.19 Kb)


Post has been editedsagitt67 - 10.08.18, 02:25



Rep: (2039)
Light color icons in the status bar and the navigation bar after closing bell

Attached Image

Author : poppuri
Firmware : Try on nougat and Oreo
If you do your background in the dialer, then after the end of the call will be dark icons in the status bar and nav. panel
You can of course hide the status bar, but you can always make the icons light
Description
SamsungInCallUI / smali / com / android / incallui
EditingInCallActivity.smali
For line state
.method private showStatusBarWhiteIcon (Z) V
2 do everywhere in the lines of the method (I have six lines)
invoke-direct {p0, v2}, Lcom / android / incallui / InCallActivity; ->showStatusBarWhiteIcon (Z) V
for nav.bara
.method public updateNavigationBarIconColor (I) V
me for 4 in a row
invoke-direct {p0, v4}, Lcom / android / incallui / InCallActivity; ->showNavigationBarWhiteIcon (Z) V

Add. screenshots
Attached Image


Post has been editedaliwaris - 17.06.18, 12:30



Rep: (10784)
Addition to the Animation pop-up option in the settings. 8.0


Introduction
Appendix 1
A long walk around the bush mode on / off the application icon in the toast notification, which is to SEE and its foundations.
With tipsSW. ivan-68 perenes runoff Samsung.
Supplement 2
As it turned out animation toast now services.jar.Again, prompted SW.ivan_68
Suffered and this mod with the CM. The blue lines are two extra Haydee, who have an ARC, I did not bother to look for these extra. animation. Just cut them out RomKontrola. So, when replacing two Haydee you will not find in my / your pablike


edit framework-res.apk as a link with a small addition
transient_notification.xml
namely in the framework-res \ res \ layout \ transient_notification.xml code
<? xml version = "1.0" encoding = "utf-8"?>
<LinearLayout android: orientation = "vertical" android: background = android "^ attr-private / toastFrameBackground?": Layout_width = "fill_parent" android: layout_height = "fill_parent"
xmlns: android = "http://schemas.android.com/apk/res/android">
<TextView android: textAppearance = "@ style / TextAppearance.Toast" android: textColor = "@ color / bright_foreground_dark" android: layout_gravity = "center_horizontal" android: id = "@ id / message" android: layout_width = "wrap_content" android: layout_height = "wrap_content" android: shadowColor = "# bb000000" android: shadowRadius = "2.75" android: layout_weight = "1.0" />
</ LinearLayout>


replaced by

<? xml version = "1.0" encoding = "utf-8"?>
<RelativeLayout android: orientation = "vertical" android: clipChildren = "false" android: layout_width = "fill_parent" android: layout_height = "fill_parent"
xmlns: android = "http://schemas.android.com/apk/res/android">
<com.android.toast.textcolor key = "toast_text_color" android: textappearance = "@ style / textappearance.toast" Android: TextColor = "@ color / bright_foreground_dark" Android: layout_gravity = "center_horizontal" Android: id = "@ id / message "Android: background ="? ^ attr-private / toastframebackground "Android: layout_width =" wrap_content "android: layout_height =" wrap_content "android: layout_margintop =" - 16.0dip "Android: shadowcolor =" # BB000000 "Android: shadowradius =" 0.5 "Android: layout_torightof =" @ id / icon "Android: layout_below =" @ id / icon "Android: layout_marginstart =" - 16.0dip "/>
<ImageView android: id = "@ id / icon" android: layout_width = "24.0dip" android: layout_height = "24.0dip" android: layout_alignParentTop = "true" android: layout_alignParentStart = "true" />
</ RelativeLayout>

Finished, assembled / disassembled. Public need to Haydee.
framework.jar
Editing framework.jar
Copy the files from the downloaded archive framework.jar.zip link
With a little dopolneniem-8-ke smali_classes3 need to throw a folder with a smal

framework.jar / smali_classes2 / android / widget / Toast $ TN.smali

Method .method public handleShow (Landroid / os / IBinder;) V to fully replace

.method public handleShow (Landroid / os / IBinder;) V
.registers 15

const / high16 v12, 0x3f800000 # 1.0f

const / 4 v11, 0x1

iget-object v9, p0, Landroid / widget / Toast $ TN; ->mHandler: Landroid / os / Handler;

const / 4 v10, 0x2

invoke-virtual {v9, v10}, Landroid / os / Handler; ->hasMessages (I) Z

move-result v9

if-nez v9,: cond_14

iget-object v9, p0, Landroid / widget / Toast $ TN; ->mHandler: Landroid / os / Handler;

invoke-virtual {v9, v11}, Landroid / os / Handler; ->hasMessages (I) Z

move-result v9

if-eqz v9,: cond_15

: cond_14
return-void

: cond_15
iget-object v9, p0, Landroid / widget / Toast $ TN; ->mView: Landroid / view / View;

iget-object v10, p0, Landroid / widget / Toast $ TN; ->mNextView: Landroid / view / View;

if-eq v9, v10,: cond_e3

invoke-virtual {p0}, Landroid / widget / Toast $ TN; ->handleHide () V

iget-object v9, p0, Landroid / widget / Toast $ TN; ->mNextView: Landroid / view / View;

iput-object v9, p0, Landroid / widget / Toast $ TN; ->mView: Landroid / view / View;

iget-object v9, p0, Landroid / widget / Toast $ TN; ->mView: Landroid / view / View;

invoke-virtual {v9}, Landroid / view / View; ->getContext () Landroid / content / Context;

move-result-object v9

invoke-virtual {v9}, Landroid / content / Context; ->getApplicationContext () Landroid / content / Context;

move-result-object v2

iget-object v9, p0, Landroid / widget / Toast $ TN; ->mView: Landroid / view / View;

invoke-virtual {v9}, Landroid / view / View; ->getContext () Landroid / content / Context;

move-result-object v9

invoke-virtual {v9}, Landroid / content / Context; ->getOpPackageName () Ljava / lang / String;

move-result-object v7

if-nez v2,: cond_3e

iget-object v9, p0, Landroid / widget / Toast $ TN; ->mView: Landroid / view / View;

invoke-virtual {v9}, Landroid / view / View; ->getContext () Landroid / content / Context;

move-result-object v2

: cond_3e
iget-object v9, p0, Landroid / widget / Toast $ TN; ->mView: Landroid / view / View;

const v10, 0x1020006

invoke-virtual {v9, v10}, Landroid / view / View; ->findViewById (I) Landroid / view / View;

move-result-object v0

check-cast v0, Landroid / widget / ImageView;

invoke-virtual {v2}, Landroid / content / Context; ->getContentResolver () Landroid / content / ContentResolver;

move-result-object v9

const-string / jumbo v10, "toast_icon"

invoke-static {v9, v10, v11}, Landroid / provider / Settings $ System; ->getInt (Landroid / content / ContentResolver; Ljava / lang / String; I) I

move-result v9

if-ne v9, v11,: cond_64

if-eqz v0,: cond_64

invoke-virtual {v2}, Landroid / content / Context; ->getPackageManager () Landroid / content / pm / PackageManager;

move-result-object v8

const / 4 v6, 0x0

: try_start_5d
invoke-virtual {v8, v7}, Landroid / content / pm / PackageManager; ->getApplicationIcon (Ljava / lang / String;) Landroid / graphics / drawable / Drawable;
: try_end_60
.catch Landroid / content / pm / PackageManager $ NameNotFoundException; {: Try_start_5d ..: try_end_60}: catch_e4

move-result-object v6

: goto_61
invoke-virtual {v0, v6}, Landroid / widget / ImageView; ->setImageDrawable (Landroid / graphics / drawable / Drawable;) V

: cond_64
const-string / jumbo v9, "window"

invoke-virtual {v2, v9}, Landroid / content / Context; ->getSystemService (Ljava / lang / String;) Ljava / lang / Object;

move-result-object v9

check-cast v9, Landroid / view / WindowManager;

iput-object v9, p0, Landroid / widget / Toast $ TN; ->mWM: Landroid / view / WindowManager;

iget-object v9, p0, Landroid / widget / Toast $ TN; ->mView: Landroid / view / View;

invoke-virtual {v9}, Landroid / view / View; ->getContext () Landroid / content / Context;

move-result-object v9

invoke-virtual {v9}, Landroid / content / Context; ->getResources () Landroid / content / res / Resources;

move-result-object v9

invoke-virtual {v9}, Landroid / content / res / Resources; ->getConfiguration () Landroid / content / res / Configuration;

move-result-object v1

iget v9, p0, Landroid / widget / Toast $ TN; ->mGravity: I

invoke-virtual {v1}, Landroid / content / res / Configuration; ->getLayoutDirection () I

move-result v10

invoke-static {v9, v10}, Landroid / view / Gravity; ->getAbsoluteGravity (II) I

move-result v5

iget-object v9, p0, Landroid / widget / Toast $ TN; ->mParams: Landroid / view / WindowManager $ LayoutParams;

iput v5, v9, Landroid / view / WindowManager $ LayoutParams; ->gravity: I

and-int / lit8 v9, v5, 0x7

const / 4 v10, 0x7

if-ne v9, v10,: cond_94

iget-object v9, p0, Landroid / widget / Toast $ TN; ->mParams: Landroid / view / WindowManager $ LayoutParams;

iput v12, v9, Landroid / view / WindowManager $ LayoutParams; ->horizontalWeight: F

: cond_94
and-int / lit8 v9, v5, 0x70

const / 16 v10, 0x70

if-ne v9, v10,: cond_9e

iget-object v9, p0, Landroid / widget / Toast $ TN; ->mParams: Landroid / view / WindowManager $ LayoutParams;

iput v12, v9, Landroid / view / WindowManager $ LayoutParams; ->verticalWeight: F

: cond_9e
iget-object v9, p0, Landroid / widget / Toast $ TN; ->mParams: Landroid / view / WindowManager $ LayoutParams;

iget v10, p0, Landroid / widget / Toast $ TN; ->mX: I

iput v10, v9, Landroid / view / WindowManager $ LayoutParams; ->x: I

iget-object v9, p0, Landroid / widget / Toast $ TN; ->mParams: Landroid / view / WindowManager $ LayoutParams;

iget v10, p0, Landroid / widget / Toast $ TN; ->mY: I

iput v10, v9, Landroid / view / WindowManager $ LayoutParams; ->y: I

iget-object v9, p0, Landroid / widget / Toast $ TN; ->mParams: Landroid / view / WindowManager $ LayoutParams;

iget v10, p0, Landroid / widget / Toast $ TN; ->mVerticalMargin: F

iput v10, v9, Landroid / view / WindowManager $ LayoutParams; ->verticalMargin: F

iget-object v9, p0, Landroid / widget / Toast $ TN; ->mParams: Landroid / view / WindowManager $ LayoutParams;

iget v10, p0, Landroid / widget / Toast $ TN; ->mHorizontalMargin: F

iput v10, v9, Landroid / view / WindowManager $ LayoutParams; ->horizontalMargin: F

iget-object v9, p0, Landroid / widget / Toast $ TN; ->mParams: Landroid / view / WindowManager $ LayoutParams;

iput-object v7, v9, Landroid / view / WindowManager $ LayoutParams; ->packageName: Ljava / lang / String;

iget-object v9, p0, Landroid / widget / Toast $ TN; ->mParams: Landroid / view / WindowManager $ LayoutParams;

iget v10, p0, Landroid / widget / Toast $ TN; ->mDuration: I

if-ne v10, v11,: cond_e7

const-wide / 16 v10, 0x1b58

: goto_c2
iput-wide v10, v9, Landroid / view / WindowManager $ LayoutParams; ->hideTimeoutMilliseconds: J

iget-object v9, p0, Landroid / widget / Toast $ TN; ->mParams: Landroid / view / WindowManager $ LayoutParams;

iput-object p1, v9, Landroid / view / WindowManager $ LayoutParams; ->token: Landroid / os / IBinder;

iget-object v9, p0, Landroid / widget / Toast $ TN; ->mView: Landroid / view / View;

invoke-virtual {v9}, Landroid / view / View; ->getParent () Landroid / view / ViewParent;

move-result-object v9

if-eqz v9,: cond_d7

iget-object v9, p0, Landroid / widget / Toast $ TN; ->mWM: Landroid / view / WindowManager;

iget-object v10, p0, Landroid / widget / Toast $ TN; ->mView: Landroid / view / View;

invoke-interface {v9, v10}, Landroid / view / WindowManager; ->removeView (Landroid / view / View;) V

: cond_d7
: try_start_d7
iget-object v9, p0, Landroid / widget / Toast $ TN; ->mWM: Landroid / view / WindowManager;

iget-object v10, p0, Landroid / widget / Toast $ TN; ->mView: Landroid / view / View;

iget-object v11, p0, Landroid / widget / Toast $ TN; ->mParams: Landroid / view / WindowManager $ LayoutParams;

invoke-interface {v9, v10, v11}, Landroid / view / WindowManager; ->addView (Landroid / view / View; Landroid / view / ViewGroup $ LayoutParams;) V

invoke-direct {p0}, Landroid / widget / Toast $ TN; ->trySendAccessibilityEvent () V
: try_end_e3
.catch Landroid / view / WindowManager $ BadTokenException; {: Try_start_d7 ..: try_end_e3}: catch_ea

: cond_e3
: goto_e3
return-void

: catch_e4
move-exception v3

goto / 16: goto_61

: cond_e7
const-wide / 16 v10, 0xfa0

goto: goto_c2

: catch_ea
move-exception v4

goto: goto_e3
.end method

We finished, assembled
services.jar
Now services.jar

smali \ com \ android \ server \ policy \ PhoneWindowManager.smali

The method .method public adjustWindowParamsLw (Landroid / view / WindowManager $ LayoutParams;) V
add blue inserts

Adding a code blue.
iget-object v1, p0, Lcom / android / server / policy / PhoneWindowManager; ->mContext: Landroid / content / Context;

invoke-virtual {v1}, Landroid / content / Context; ->getContentResolver () Landroid / content / ContentResolver;

move-result-object v1

const-string / jumbo v2, "toast_animation"

const / 4 v3, 0x1

invoke-static {v1, v2, v3}, Landroid / provider / Settings $ System; ->getInt (Landroid / content / ContentResolver; Ljava / lang / String; I) I

move-result v1

packed-switch v1,: pswitch_data_110

goto: goto_d

: pswitch_8a
iput v6, p1, Landroid / view / WindowManager $ LayoutParams; ->windowAnimations: I

goto / 16: goto_d

: pswitch_8e

const v1, 0x1030004

iput v1, p1, Landroid / view / WindowManager $ LayoutParams; ->windowAnimations: I

goto / 16: goto_d

: pswitch_95
const v1, 0x103054e

iput v1, p1, Landroid / view / WindowManager $ LayoutParams; ->windowAnimations: I

goto / 16: goto_d

: pswitch_9c
const v1, 0x1030546

iput v1, p1, Landroid / view / WindowManager $ LayoutParams; ->windowAnimations: I

goto / 16: goto_d

: pswitch_a3
const v1, 0x1030547

iput v1, p1, Landroid / view / WindowManager $ LayoutParams; ->windowAnimations: I

goto / 16: goto_d

: pswitch_aa
const v1, 0x103054a

iput v1, p1, Landroid / view / WindowManager $ LayoutParams; ->windowAnimations: I

goto / 16: goto_d

: pswitch_b1
const v1, 0x103054b

iput v1, p1, Landroid / view / WindowManager $ LayoutParams; ->windowAnimations: I

goto / 16: goto_d

: pswitch_b8
const v1, 0x103054c

iput v1, p1, Landroid / view / WindowManager $ LayoutParams; ->windowAnimations: I

goto / 16: goto_d

: pswitch_bf
const v1, 0x103054d

iput v1, p1, Landroid / view / WindowManager $ LayoutParams; ->windowAnimations: I

goto / 16: goto_d

: pswitch_c6
const v1, 0x103054f

iput v1, p1, Landroid / view / WindowManager $ LayoutParams; ->windowAnimations: I

goto / 16: goto_d

: pswitch_cd
const v1, 0x1030550

iput v1, p1, Landroid / view / WindowManager $ LayoutParams; ->windowAnimations: I

goto / 16: goto_d

: pswitch_d4
const v1, 0x1030305

iput v1, p1, Landroid / view / WindowManager $ LayoutParams; ->windowAnimations: I

goto / 16: goto_d

: pswitch_db
const v1, 0x1030304

iput v1, p1, Landroid / view / WindowManager $ LayoutParams; ->windowAnimations: I

goto / 16: goto_d

: pswitch_e2
const v1, 0x1030551

iput v1, p1, Landroid / view / WindowManager $ LayoutParams; ->windowAnimations: I

goto / 16: goto_d

: pswitch_e9
const v1, 0x1030549

iput v1, p1, Landroid / view / WindowManager $ LayoutParams; ->windowAnimations: I

goto / 16: goto_d

: pswitch_f0
const v1, 0x1030548

iput v1, p1, Landroid / view / WindowManager $ LayoutParams; ->windowAnimations: I

goto / 16: goto_d

: cond_9a
const / 4 v0, 0x0

goto: goto_37

: sswitch_data_9c
.sparse-switch
0x7d0 ->: sswitch_5c
0x7d5 ->: sswitch_83
0x7d6 ->: sswitch_4d
0x7df ->: sswitch_4d
0x7f4 ->: sswitch_7c
.end sparse-switch
: pswitch_data_110
.packed-switch 0x0
: pswitch_8a
: pswitch_8e
: pswitch_95
: pswitch_9c
: pswitch_a3
: pswitch_aa
: pswitch_b1
: pswitch_b8
: pswitch_bf
: pswitch_c6
: pswitch_cd
: pswitch_d4
: pswitch_db
: pswitch_e2
: pswitch_e9
: pswitch_f0
.end packed-switch

.end method

Prescribe your Haydee. My Public attached. Putting it.
Attached filepublic.xml(1.04 MB)


RomControl
RC

res / values ​​/ arrays.xml
<string-array name = "toast_animation_entries">
<item>none animation</ item>
<item>default animation</ item>
<item>fade animation</ item>
<item>SlideRight animation</ item>
<item>SlideLeft animation</ item>
<item>Xylon animation</ item>
<item>toko animation</ item>
<item>tn animation</ item>
<item>Honami animation</ item>
<item>FastFade animation</ item>
<item>GrowFade animation</ item>

<item>Translucent animation</ item>
<item>SlideLeftRight animation</ item>
<item>SlideRightLeft animation</ item>
</ string-array>
<string-array name = "toast_animation_values">
<item>0</ item>
<item>1</ item>
<item>2</ item>
<item>3</ item>
<item>4</ item>
<item>5</ item>
<item>6</ item>
<item>7</ item>
<item>8</ item>
<item>9</ item>
<item>10</ item>

<item>13</ item>
<item>14</ item>
<item>15</ item>
</ string-array>


res / values-ru / arrays.xml
<string-array name = "toast_animation_entries">
<item>No animation</ item>
<item>Default</ item>
<item>Manifestation of attenuation</ item>
<item>Move to the right</ item>
<item>Move to the left</ item>

<item>Xylon animation</ item>
<item>Toko animation</ item>
<item>Tn animation</ item>
<item>Honami animation</ item>

<item>Rapid onset of attenuation</ item>
<item>Slow display of attenuation</ item>
<item>Translucency</ item>
<item>Move from left to right</ item>
<item>Move right to left</ item>


res / xml / ...
<PreferenceCategory android: title = "Animation pop-up" />
<com.wubydax.romcontrol.v2.prefs.MyListPreference android: entries = "@ array / toast_animation_entries" android: title = "Pop-up animation" android: key = "toast_animation" android: defaultValue = "0" android: entryValues ​​= "@ array / toast_animation_values ​​"/>
<com.wubydax.romcontrol.v2.prefs.ColorPickerPreference android: title = "Pop-up text color" android: key = "toast_text_color" android: defaultValue = "\ # fffafafa" />
<com.wubydax.romcontrol.v2.prefs.MySwitchPreference android: title = "Application Icon" android: key = "toast_icon" android: defaultValue = "false" android: summaryOn = "On" android: summaryOff = "Off" />



Post has been editedzmeeed2020 - 05.06.18, 16:31



Rep: (7355)
Switch tracks when the screen is off. android 8.x.x



Rep: (3339)
Dynamic navbar

ANDROID 8.0
Ever since I 6ki all assembly includes a modification of the "Dynamic status bar." Tried to accommodate this modification to navbaru, and in my opinion, - the effect of steeper: yes2:
Original source
Screenshotshere
1. We disassembleSystemUI.apk
2. Copy an exploded SystemUI.apk archive content
Attached fileSystemUI.rar(8.95 KB)
.
3. InSystemUI \ res \ layout \ navigation_layout.xm l add a line to the (+)
<? xml version = "1.0" encoding = "utf-8"?>
<FrameLayout android: layout_width = "fill_parent" android: layout_height = "fill_parent"
xmlns: android = "http://schemas.android.com/apk/res/android" xmlns: systemui = "http://schemas.android.com/apk/res-auto">
+ <com.fmd.navibarcolor.color android: orientation = "horizontal" android: layout_width = "fill_parent" android: layout_height = "fill_parent">
+ <View android: id = "@ id / dynamic_navi_bar_filter" android: visibility = "gone" android: layout_width = "fill_parent" android: layout_height = "fill_parent" />
+ <View android: id = "@ id / dynamic_navi_bar_gradient" android: background = "@ drawable / dynamic_navi_bar_drawable_gradient" android: visibility = "gone" android: layout_width = "fill_parent" android: layout_height = "fill_parent" />
+ </com.fmd.navibarcolor.color>

4. InSystemUI \ res \ layout \ navigation_layout_rot90.xml add a line to the (+)
<? xml version = "1.0" encoding = "utf-8"?>
<FrameLayout android: layout_width = "fill_parent" android: layout_height = "fill_parent" android: layoutDirection = "ltr"
xmlns: android = "http://schemas.android.com/apk/res/android" xmlns: systemui = "http://schemas.android.com/apk/res-auto">
+ <com.fmd.navibarcolor.color android: orientation = "horizontal" android: layout_width = "fill_parent" android: layout_height = "fill_parent">
+ <View android: id = "@ id / dynamic_navi_bar_filter" android: visibility = "gone" android: layout_width = "fill_parent" android: layout_height = "fill_parent" />
+ <View android: id = "@ id / dynamic_navi_bar_gradient" android: background = "@ drawable / dynamic_navi_bar_drawable_gradient" android: visibility = "gone" android: layout_width = "fill_parent" android: layout_height = "fill_parent" />
+ </com.fmd.navibarcolor.color>

5. InSystemUI \ res \ values ​​\ ids.xml add a line to the (+)
+ <item type = "id" name = "dynamic_navi_bar_filter">false</ item>
+ <item type = "id" name = "dynamic_navi_bar_gradient">false</ item>
</ resources>

6. assemble and disassembleSystemUI.apk
7. InSystemUI \ smali_classes2 \ com \ fmd \ navibarcolor \ color.smali prescribes their id
In the attached file incolor.smali all comments to change the id prescribed. I draw your attention that
const v1, 0x10502b1 #<public type = "dimen" name = "status_bar_height" id = "0x010502b1" />
- fromframework-res.apk
8. RomControl write
<PreferenceScreen android: title = "Dynamic navbar">
<com.wubydax.romcontrol.v2.prefs.MySwitchPreference android: title = "Dynamic navbar" android: key = "dynamic_navi_toggle" android: defaultValue = "false" android: summaryOn = "ON." android: summaryOff = "Off." app: packageNameToKill = "com.android.systemui" app: isSilent = "false" />
<com.wubydax.romcontrol.v2.prefs.MyListPreference android: entries = "@ array / dsb_gradient_filter_entries" android: title = "Gradient" android: key = "dynamic_navi_bar_gradient_state" android: summary = "gradient in navbare" android: dependency = "dynamic_navi_toggle "android: defaultValue =" 2 "android: entryValues ​​=" @ array / dsb_gradient_filter_values ​​"app: packageNameToKill =" com.android.systemui "app: isSilent =" false "/>
<com.wubydax.romcontrol.v2.prefs.MyListPreference android: entries = "@ array / dsb_gradient_filter_entries" android: title = "Dimming" android: key = "dynamic_navi_bar_filter_state" android: summary = "Blackout in navbare" android: dependency = "dynamic_navi_toggle "android: defaultValue =" 2 "android: entryValues ​​=" @ array / dsb_gradient_filter_values ​​"app: packageNameToKill =" com.android.systemui "app: isSilent =" false "/>
<com.wubydax.romcontrol.v2.prefs.MySeekBarPreference android: title = "intensity dimming" android: key = "dynamic_navi_bar_filter_value" android: dependency = "dynamic_navi_toggle" android: defaultValue = "10" app: minValue = "0" app: maxValue = "70" app: packageNameToKill = "com.android.systemui" app: isSilent = "false" />
</ PreferenceScreen>

and an array of
<string-array name = "dsb_gradient_filter_entries">
<item>Turned off</ item>
<item>Only on the desktop</ item>
<item>Everywhere except the desktop</ item>
<item>Enabled</ item>
</ string-array>
<string-array name = "dsb_gradient_filter_values">
<item>0</ item>
<item>1</ item>
<item>2</ item>
<item>3</ item>
</ string-array>

9. All: yes2:

Post has been editedmpal - 08.07.18, 17:27



Rep: (557)
Gentlemen, please help with the Settings assembly ...
such a mistake

W: C: \ BatchApkTool \ _INPUT_APK \ SecSettings \ res \ values ​​\ styles.xml: 1599: error: Resource entry PreferenceTheme already has bag item dropdownPreferenceStyle.
W: C: \ BatchApkTool \ _INPUT_APK \ SecSettings \ res \ values ​​\ styles.xml: 1598: Originally defined here.

the error in this part:
<style name = "PreferenceTheme" parent = "@ style / PreferenceThemeOverlay.v14.Material">
<item name = "android: editTextPreferenceStyle">@ Style / EditTextPreference</ item>
<item name = "apnPreferenceStyle">@ Style / ApnPreference</ item>
<item name = "dialogPreferenceStyle">@ Style / SettingsDialogPreference</ item>
<item name = "dropdownPreferenceStyle">@ Style / Preference.DropDown.Material</ item>
<item name = "dropdownPreferenceStyle">@ Style / SettingsDropdownPreference</ item>
<item name = "editTextPreferenceStyle">@ Style / EditTextPreference</ item>
<item name = "footerPreferenceStyle">@ Style / FooterPreference</ item>
<item name = "preferenceCategoryStyle">@ Style / SettingsPreferenceCategory</ item>
<item name = "preferenceFragmentStyle">@ Style / PreferenceFragmentStyle</ item>it 1599ya line
<item name = "preferenceStyle">@ Style / SettingsPreference</ item>
<item name = "seekBarPreferenceStyle">@ Style / SettingsSeekBarPreference</ item>
<item name = "switchPreferenceStyle">@ Style / SettingsSwitchPreference</ item>
</ style>


Post has been editedmegabox1994 - 19.06.18, 18:58



Rep: (2039)
* megabox1994,
Samsung SM-N950F (F / DS) Galaxy Note 8 - Editing of system applications (Post Wlryss # 71609340)



Rep: (3339)
Guys who know why the dialer opens in a window ???
Attached Image

Where do these "additional information" "" , ???



Rep: (7437)
mpal @ 19.06.18, 19:58*
Where do these "additional information"

Mention has to call_accept_reject.xml



Rep: (3339)
* RequeLine ,
This screen is not dialer. Ie the dialer does not open full-screen, on top of a status bar is such crap. Location ... lezit ??? Whole brain made a - I do not understand
Hiding in statusbara through dialer does nothing styles

Post has been editedmpal - 19.06.18, 20:11



Rep: (557)
* aliwaris I did everything as the answer, but the problem persists longer context, saying that there is no such resource referenced "preferenceFragmentStyle1"
-------------
all demolished this line, look, can and run the application ...

Post has been editedmegabox1994 - 19.06.18, 20:16



Rep: (7437)
mpal @ 19.06.18, 20:09*
This screen is not dialer.

realized. The dialer in the above file, there
<TextView android: layout_width = "wrap_content" android: layout_height = "wrap_content" android: text = "@ string / help_text_more_info" style = "@ style / HelpPageTipBoxTitle" />

help_text_more_info and it has more information. I thought that there may be.

Posted 06/19/2018 20:19:

mpal @ 19.06.18, 20:09*
Location ... lezit

and through hierarchyviewer or monitor?

Post has been editedRequeLine - 19.06.18, 20:19



Rep: (3339)
RequeLine @ 19.06.18, 21:18*
hierarchyviewer or monitor?

Et I do not know: blush:



Rep: (7437)
* mpal
Try this, right from your phone.
Developer Assistant
it must also show



Rep: (7355)
megabox1994 @ 19.06.18, 21:15*
all demolished this line, look, can and run the application ...

just daring the line
<item name = "dropdownPreferenceStyle">@ Style / SettingsDropdownPreference</ item>


Posted on 06/19/2018, 22:10:

mpal @ 19.06.18, 21:42*
At I do not know

Very handy thing, sometimes it can be found only a resource location, install on your PChttps://developer.android.com/studio/(Via the link 64 bit), hereinafter C: \ Users \ sagitt67 (or nickname) \ AppData \ Local \ Android \ sdk \ tools \ monitor.bat run with connected devaysom description will aydishniki windows.
Attached Image


Post has been editedsagitt67 - 19.06.18, 22:15



Rep: (557)
children, since went so booze, ask ... More
in general, the essence is - trying to win oreo, machine - amerikosy. can someone actually sensible that tell Russification applications? whether it is enough to transfer values-ru-ru, and the xml from an adjacent device, or you need something else to rule? machine after the "popping" of the Management Board refuses to run apk (naturally, odex files from folder-directional apk removed). transfer of individual system apk I have not done before, but the hand of the arms. actually I am asking for help from the knowledgeable.

Post has been editedmegabox1994 - 19.06.18, 22:45



Rep: (7355)
Megabox1994 @ 06/19/18, 23:45*
Is it enough to move Values-ru and XML-EU from the adjacent apparatus

So it is not done, you can translate itTranslatorApkfor PC


Full version    

Help     rules

Now: 01/24/21, 01:00