[G3 Themes and Apps] P_Toti:
I'm writing this TUT on [MENTION=5020670]matthew0776[/MENTION] request. LG G3(as well as the G2 and many other LG phones) comes with a Softkey theme engine that has the following limitations:

1)You can't use themes with transparency on launcher

2)You can't use themes on some lg apps like gallery,video player,etc

3)You can't have themes working with immersive mode

4)You can't customize the custom glow background

You can avoid them installing G3 TweaksBox.

Attached you can find a theme example which is basically the black gradation theme that comes with the rom: the only difference is the Glow Background which is RED.(I also attached the eclipse template)

Follow these steps to create a theme:

1)Modify the package name:

Open the MANIFEST(AndroidManifest.xml) and change the package name. Don't touch anything else in the MANIFEST file.

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="[COLOR="Red"]com.example.g3_softkey_theme_example[/COLOR]"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk
android:minSdkVersion="16"
android:targetSdkVersion="19" />
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name">
<activity
android:excludeFromRecents="true"
android:launchMode="singleInstance"
android:name="com.example.g3_softkey_theme_example.MainActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<action android:name="com.lge.systemui.navigation.THEME"/>
<category android:name="android.intent.category.DEFAULT"/>
</intent-filter>
</activity>
</application>

</manifest>

2)Change theme and app Name:

Open the strings.xml file(res/values/) and change the theme and the app name

<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name">[COLOR="Red"]SoftKey Theme Example[/COLOR]</string>
<string name="theme_name_blackgradation">[COLOR="Red"]Theme Example[/COLOR]</string>
</resources>

3)REPLACING RESOURCES:

Just replace your themed pngs in the xxx-hdpi folder(if you want to make the theme available also for other LG phones you should replace also the images in the xx-hdpi folder)

4)TIPS:

As you can see in the theme for each key there are 3 drawables

<?xml version="1.0" encoding="utf-8"?>
<selector
xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_enabled="true" android:state_pressed="false" android:drawable="@drawable/ic_sysbar_home_normal" />
<item android:state_enabled="true" android:state_pressed="true" android:drawable="@drawable/ic_sysbar_home_pressed" />
<item android:drawable="@drawable/ic_sysbar_home_disabled" />
</selector>

If you want to use the same drawable for all the three states just change selectors in the drawabl folder :

<?xml version="1.0" encoding="utf-8"?>
<selector
xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_enabled="true" android:state_pressed="false" android:drawable="@drawable/ic_sysbar_home_normal" />
<item android:state_enabled="true" android:state_pressed="true" android:drawable="@drawable/ic_sysbar_home_normal" />
<item android:drawable="@drawable/ic_sysbar_home_normal" />
</selector>

In this way copying only a drawable for each key(2 if you consider land) is enough