Tablet Tweaks Merged to Cyanogenmod Sources, Now Available for Firmware Developers


Staff member
Jul 9, 2010

Since the end of March, mad-murdock of Germany started a thread on XDA for development of enhancing the tablet friendliness of Cyanogenmod 7 on the Nook Color. Cyanogenmod is the most popular aftermarket build of Android. Version 7 of Cyanogenmod corresponds to Android 2.3 Gingerbread, which is the latest version of Android in which source code had been released by Google's Android development team.

New features include the ability to move the Android status bar to the bottom (default is top), adding customizable software buttons to the status bar, enhancing long-press functionality for volume toggles, quick notification system that allows notifications to be toggled with a soft button press, and all of the new tablet features organized in a tablet settings area within the Cyanogenmod Settings menu. More features are in development, but this enhances the functionality of existing Android tablets that have the ability to run Cyanogenmod.

All of these tablet optimized tweaks are now available for all to build. The changes had been sitting on the Cyanogenmod Gerrit Code Review for a couple of weeks, and finally have been merged into the source code today.

The full list of modifications (as of now, anyways):
List of modifications

  • Toggle status bar top/bottom via cm settings. Changes position on the fly when setting is toggled.
  • Moved carrier and power notifications to bottom for bottom bar
  • Created "Tablet tweaks" menu in cm-settings root to gather all tablet related options in one place
  • Extended power menu with home/menu/back buttons. toggable on the fly via cm settings
  • Custom volume-long-press events (home/back/menu/call/end call/search/start-stop-music/next track/prev track/longpress home)
  • Added same options for both-volume-buttons press and long-press
  • Fixed status bar xml, so soft buttons now appear as big as the .png file is.
  • Solved issue about soft buttons not clickable. Their size is now determined smart by the real size of the buttons
  • Added option to move soft-buttons left or right
  • Added submenu to choose which soft buttons to display.
  • Added Quick-Notification-Area-Soft-Button - instantly opens/closes notification area since swiping it open is a long way on tablets
  • Added a Dead-Zone option, so the middle of the status bar is not clickable. Happend a lot before people click it when trying to hit space
  • New graphics from Drakknar in extended power menu - thanks!
  • Added option to toggle extended power items seperatly
  • Added option to reverse power button behavior (switch short-press with long-press action)
  • Cleaned up the options and created new submenu
  • complelty rewrote volume button handling to handle all our new demands
  • integrated Drakknars great new design and wrote code for it
  • lotsa tiny fixes / bugfixes
  • Added option to disable/override fullscreen
  • Added option to disable lockscreen
  • Disabled the animated text for ongoing notifications when softbuttons enabled. this "ticker" did hide the soft buttons for a short while
  • Used same status bar size for nook color than for vega now. buttons should be bigger and not stretched this way. awaiting complaints about status bar too big
  • added hdpi icons for resized statusbar via overlay for vega and encore this way, status bar items dont look blury anymore
  • added search button to list of soft-buttons - its off by default
  • added long-press to home, back and search soft-button
  • extended fullscreen handling: when a fullscreen app is running, an additional
    hide-softbutton is displayed. once pressed, the app gets real fullscreen
  • added option to choose unhide button for fullscreen
  • improved hide-button handling for special situation, like app-starting-app (i.e. astro file mananger starting movie player, which does fullscreen request) and more
  • Bugfix release #1
  • Bugfix release #2 (aka tt.RC1) removed volume remapping for cm7stable, because source of too many possible bugs considering all the uses of volume buttons + lockscreen disable + reverse
  • code cleanup - moved most stuff to Cm classes (CmSystem, CmPhoneWindowManager, CmStatusBarView, CmButtonTracker) - am satisfied with the code now
  • improved fullscreen overriding in Window class. not only setFlags, but also setAttributes is intercepted now
  • modified stock terminal emulator, so it doesnt crash the system anymore, when disable-fullscreen is selected
  • further improved fullscreen handling after all feedback i got. RC2 and probably merge ready code

Where is the volume remapping?
Its disabled for cm7 stable release. it will be re-enabled in cm71 nightlies. The reason is simple: its a very BIG source of possible bugs. we got volume buttons to silence phone calls, to control mp3's when screen is off, we got lockscreen disabling and we got reverse behavior of volume buttons - this is toooo much in the short time left until cm7 stable - i dont wanna be the dude who is responsible for an unstable release.
XDA via @naobsd on Twitter
Last edited by a moderator: