[Galaxy S Advance I9070 Themes and Apps] Metalhead081:
GravityBox - tweak box - Xposed module for devices running Android 4.1/4.2/4.3 ROMs

Version 2.8.4 [JellyBean]

Version for KitKat is available in this thread: http://xdaforums.com/showthread.php?p=48820516#post48820516

Gravitybox for Jellybean

Introduction

The app utilizes amazing Xposed framework coded by recognized

developer rovo89 which, briefly, provides interface for injecting code into any app, including system services allowing modifications of applications and system services at run-time. One of the biggest advantages of GravityBox is that it is not bound to any specific device. Actually, it should run on any device having vanilla Android 4.1/4.2/4.3 (ROM close enough to AOSP).

This project wouldn't be possible without rovo's Xposed framework, so huge kudos to him.

Feature highlight

GravityBox provides 2 main groups of features:

Fixes - help to fight typical MTK6589 bugs like:

--- Date&Time settings crash

--- Caller ID mismatch

--- Split conversation in messaging

--- Wakelock in calendar app periodically turning on the screen

--- Waelock in messaging app turning on the screen every time new message arrives

--- Missing TTS settings in Language&Input

--- Missing extended developer options

Mods - the set of additional useful features that make using the system more easy and fun

--- CyanogenMod Pie controls

--- Expanded Desktop

--- Statusbar QuickSettings tile management with tile reordering

--- Lockscreen targets

--- Statusbar color and transparency

--- Statusbar Brightness Control

--- Statusbar icon colors

--- Additional QuickSettings tiles:

------- Sync on/off, WiFi AP on/off, GravityBox shortcut, Torch, Network mode (2G/3G/2G+3G switch), Sleep, QuickRecord,

QuickApp, GPS on/off, Ringer mode, Volume tile

--- Quick pulldown - switches to QuickSettings when status bar is pulled down near edges

--- Auto-switch to QuickSettings when there are no notifications

--- Center clock in statusbar

--- Battery indicator style

--- Navigation bar tweaks

--- Low battery warning policy

--- Disable LED flashing when battery low

--- Disable LED while charging

--- Auto-hiding of signal icons for empty SIM Slots

--- Advanced power-off menu (reboot, recovery)

--- Volume key cursor control

--- Skip tracks by volume key long-press while screen off (thanks to rovo89)

--- More volume levels for music stream

--- Option to control safe headset media volume

--- Button for clearing all recent tasks at once

--- Fullscreen caller photo

--- CRT screen off animation

--- Minimal brightness setting

--- Autobrihtness levels adjustment

--- Lockscreen tweaks - show widgets maximized, lockscreen background style (color fill, custom image)

--- Lockscreen rotation

--- Phone tweaks - flip action, disable vibrate on call connect

--- Hardware key actions - menu long-press/double-tap, back long-press, home long-press

--- MasterKey vulnerabilities patched (thanks to [MENTION=4322181]Tungstwenty[/MENTION])

--- Dithered Holo background

--- Option to use solid black Holo background

--- Expandable volume panel

--- Option to unlink ringtone and notifications volumes

--- Notification drawer style (background color, image for portait/landscape, transparency)

--- Button backlight modes (default, disabled, always on while screen is on)

--- Button backlight notifications (for devices that lack Notification LED)

... more to come

Compatibility

Some words about GB's main concept. One thing I didn't like about xposed modules was that it was always necessary to reboot a device after making a change to some option. Since GB's main concept was to turn MTK devices running stock ROM into something that's close enough to a feature-packed custom ROM, I had to take a decision - for it to be as much comfortable as possible and to really behave like a custom ROM, I had to design it to support most of the preference changes to be done on the fly without needing to reboot a device. While this sounds nice, it also brings couple of "drawbacks". For changes to be made on the fly, it is necessary to make some preparations when device starts. This means, even if you don't use the particular feature, the necessary preparation/modification is already there and is waiting for the user to come and change that option.

This means it is not possible to "completely deactivate" particular feature if it causes trouble on your device or if you installed GB because you want to use only one particular feature you can't find elsewhere.

This results in issues on ROMs/devices that have parts that are diverting from default Android implementation too much, or are running heavily modified custom ROMs.

If you experience weird issues after installing GB, even if you didn't activate a particular feature, it is not because of GB is broken, it is because it is not compatible with your ROM. It is very similar as if you installed ROM built from source for Nexus to some Xperia device - it won't work.

Next thing, GB is a complex module and is not suitable for 1 purpose scenario. This means, if you are running custom ROM built from source (CM, PAC, ...), and you are missing a certain feature, your best option is to go ask creators of those ROMs to implement those additional features. Supplementing missing features on well-known custom ROMs built from source by installing xposed modules (especially complex ones) is definitely not a good way to go and can cause more trouble than good.

And finally, the last. GB being a complex module, it shouldn't be combined with other complex modules often racing for the same goal. They can conflict/fight on the same playground and there's no way you can deterministically say which one's going to win.

They can even lose both.