Code:

v3.2.1 - Updated translations - Optimize new profile pngs - Update some deprecated APIs - Fix a couple NullPointerExceptions - Fix ListView padding and text sizes - Fix crash when showing error text - More layout fixes for tablet devices - Only show last 500 lines of logcat log - Do not center full kernel version text - Update developer circleimageview border - Use new BottomSheet from support library - Simplify setting logcat progress bar color - Bind more colors/string using ButterKnife - Simplify tinting of text selector handles - Use wrap_content for AppCompatButton width - Always use accentColor for text input field - Disable user from changing color input alpha - Update 3rd party libraries to latest versions - Fix Running Processes title on KitKat devices - Update charged drawable to be more material-ish - Use new Support Vector Drawables instead of pngs - Update colors and elevations to match guidelines - Only set background color when cardview is shown - Fix NullPointerException when closing InfoFragment - Add null pointer check when setting mLogcatSummary - Use Fragment and DialogFragment from support library - Replace Listview with RecyclerView from support library - Show error text when temp monitor throws an exception v3.2.0 - Rewrite CPU usage code - Fix padding on tablet devices - Show list of running services - Use Butterknife resource binding - Define size of sliding tab ArrayLists - Only call Utils.isXposedInstalled once - Check if a light accent color is used - Add new developer section to Settings - Fix colored nav bar enabling by default - Use Chrome custom tab when opening links - Only recreate if theme preference changes - Rename kernel/device menus to match action - Fix padding for credits and license layouts - Allow multiple retries when updating states - Catch exception when checking for an update - Allow checking for multiple update versions - Use primary color for deep sleep notify icon - Allow better support for Right to Left layouts - Fix cpu usage crashing when exiting InfoFragment - Update libraries and build tools to latest versions - Define ArrayList sizes for Credits and Licenses - Use AccelerateDecelerateInterpolator for animations - Allow catching exception when setting core visibility - Hack to fix DiscreteSeekBar text color with light accent v3.1.9 - Fix ProgressBar height on Lollipop devices - Remove DynamicCheckBox background color v3.1.8 - Update to latest build tools - Move openURL method to Utils - Use vector drawables for API 21+ - Use ArrayList instead of LinkedList - Add Translators to Credits section - Add CPU usage monitoring to Info tab - Reduce number of calls to getActivity - Only call CPUUtils.getCoreCount() once - Add missing onCreate() to CpuSpyApp - Remove useless code from CpuSpyPreference - Use vector drawables for Preference icons - Fix ProgressBar height on KitKat devices - Use String.format() to fix lint warnings - Automate checking if new version is available - Add setting to change primary and accent colors - Tint AppCompatButton to match new accent color - Tint charged image to match new accent color - Use new Design Support Library for sliding tabs - Allow using String Array for changelog content - Recreate activity when dismissing Xposed warning v3.1.7 - Updated translations - Add support for Marshmallow - Fix charged view card alignment - Revert back to using text for tabs - Use AppCompatButton for all buttons - Adjust full kernel version text size - Remove redundant calls to getResources() - Show the total number of unused states - Add bootloader information to Info tab - Use SwitchPreference for API 21+ devices - Update primary colors to match guidelines - Summarize which theme is selected in Settings - Specify initial size of getStates ArrayList<> - Disable layout transitions during charged view - Allow animating progress bars with Auto Refresh - Simplify checking views when Auto Reset is enabled - Fix background color not showing correctly on KitKat - Move hiding states below percentage to new toolbar - Add toolbar for hiding/resetting/restoring states - Use ContextCompat.getColor() from support library - Allow Settings to keep scroll position during recreate - Override KeyEvent instead of using BackHandledFragment v3.1.6 - Fix crash on KitKat devices v3.1.5 - Check if new update is available - Reduce total state time text size - Update libraries to latest versions - Animate progress bars on app launch - Use icons instead for sliding tabs - Updates and fixes to theme changing - Use Roboto-Medium for snackbar actions - Fix crash if checkCoreMonitor returns zero - Use Butter Knife to bind button listeners - Show warning dialog if Xposed is installed - Use sliding cardview for full kernel version - Return null if unable to retrieve cpu info v3.1.4 - Remove unnecessary return functions - Remove useless call to ButterKnife.bind - Add Exception catch for CPU core monitoring - Add null pointer check to fix issues #69 and #70 - Dont refresh onShake if mSwipeLayout.isRefreshing - Add local SeekBarPreference to fix KitKat margin issues v3.1.3 - More variables can be final - Add checking runtime to Device Info - Update Butter Knife library to v7.0.1 - Update Android Support Library to v22.2.1 - Make hasTemp() return false if file length is 0 - Update to latest gradle and android build tools - Add service to check if device is entering deep sleep - Catch ActivityNotFoundException if unable to open intent v3.1.2 - assert mActionBar != null - Move app version to build.gradle - Update Snackbar library to v2.10.10 - Add function to show/hide unused states - Clean up SharedPreferences in CpuSpyApp - MainActivity: Add missing @Override to onResume() - Add option to hide states below certain percentage - CpuSpyApp: Use SparseArray instead of HashMap - CpuStateMonitor: Fix logging and handle exception - Stop monitoring temperature if getTemp() returns null - Remove usesless call to CPUUtils.getKernelVersion() v3.1.1 - Handle NFE instead of ignoring it - Fix lint warning by using apply() - Add support for monitoring 6-8 CPU cores - Fix some padding issues on KitKat devices - PrefsActivity: Add missing switch break - Random code clean up and improvements v3.1.0 - More variables can be final - Switch to new sliding tab layout - Fix Auto Refresh causing crash - Add reusable method for reading files - Move core monitoring to CPU Info card - Show unused states when resetting timers - Use simple listview for open source licenses - Enable monitoring only if fragment is visible - Update material-dialogs library to v0.7.6.0 - New Auto theme based on the time of day - Disable swipe to refresh if auto is enabled - Add null pointer check when removing all views v3.0-BETA8 - Remove circle reveal animation - Add widget info to welcome card - Support more devices CPU temp - Add action button back to snackbars - Merged French translations (Micks29) - Add colored btn_selector to buttons - Update to latest build tools and gradle - Fix Info text overlapping if multiple lines - Fix setting Preference icons based on theme - Add style for setting ActionBar elevation - Apply dialog content color based on theme v3.0-BETA6 - Added Shake to Refresh timers - Added CPU Temp monitoring - Refreshed charged view layout - Added new widget to reset timers - Added indicator to kernel version - Added darker primary text color - Adjusted layout for tablets/TVs - Updated to latest support libraries - Use native font on API 21 and above - Tons of code cleanup and fixes - Fixed main card animation from being cut off - Improve checking if states file exists - More improvements to theme changing - Simplified getting/setting of cpu frequencies v3.0-BETA5 - Fix memory leak when setting typeface - Updated internal 3rd party libraries - Removed deprecated getDrawable - Revert using webview for dialogs - Simplify getting/setting cpu freqs - Decrease card animation duration - Random code cleanup and fixes - Improve reading of states file - Improve reading cpu information - Improve theme changing and dark theme - Simplify checking which views to show v3.0-BETA4 - Add Material Ripple library (KitKat) - Updated internal 3rd party libraries - Animate About cardview sliding up - Adjust padding for welcome cardview - Add donate to settings overflow menu - Kernel version should use singleLine - Add custom Typeface for ActionBar title - Revert back to using CheckBoxPreference - Add colored navigation bar and dark theme - Disable cpu monitoring when app is paused v3.0-BETA3 - Refreshed UI to be more Material - Fix settings menu for KitKat devices - Some random code clean up and fixes - Add decimal to states view percentage - Add new Info page with CPU/Kernel info - Casting '_app' to 'Context' is redundant - Sync material-dialogs library with v0.6.x - Update snackbar and WhatsNew strings - Add WhatsNew option in overflow menu - Add option to reset timers when charged - Add new WelcomeCard on first launch - Use SnackbarManager to handle queues - Clean up WhatsNew dialog webview usage - Click states cardview to view unused states - Add anonymous crash and usage reporting - Switch to new blue primary/accent colors - Switch to Handler instead for Auto Refresh - Fix mBatInfoReceiver causing an exception - Add per CPU core and frequency monitoring v2.0 - Added Pull to Refresh library - Fixed a few more lint warnings - New About and License menus - Added support for KitKat and TVs - New Material style launcher icon - Use colored nav bar on Lollipop - Optimized/removed unused PNGs - Add Gmail-like Snackbar library - Timers now reset when battery full - Add Auto Refresh option to settings - New WhatsNew dialog for new releases v1.2 - Fix issue when no states file found - Adjust padding to match Material guidelines - Rearrange home_layout and fix xml formatting - Move 'Total State Time' above 'Unused CPU States' v1.1 - Adjusted padding a little - Reduced some text sizes - Removed some unused PNGs - Removed 'Time in State' header - Added shadow to action bar - Fixed progress bar background color - Added temporary icon until one can be made v1.0 - Initial release