diff options
| author | Steve Slaven <bpk@hoopajoo.net> | 2010-12-27 20:50:17 (GMT) | 
|---|---|---|
| committer | Steve Slaven <bpk@hoopajoo.net> | 2010-12-27 20:50:17 (GMT) | 
| commit | 669d442509c2b6d38f5a1ba9ccfed8d5d22bf21b (patch) | |
| tree | fd2d52df141c87ed7012da732c3ffe8f1b6e1215 /src/net | |
| parent | fbdadd1b0fcd7b7d92c261626791f3c36dba05e5 (diff) | |
| download | SoftKeys-669d442509c2b6d38f5a1ba9ccfed8d5d22bf21b.zip SoftKeys-669d442509c2b6d38f5a1ba9ccfed8d5d22bf21b.tar.gz SoftKeys-669d442509c2b6d38f5a1ba9ccfed8d5d22bf21b.tar.bz2 | |
Add theme flags to resize background the same way we resize icons so
everything is the same size
Diffstat (limited to 'src/net')
| -rw-r--r-- | src/net/hoopajoo/android/SoftKeys/Generator.java | 19 | ||||
| -rw-r--r-- | src/net/hoopajoo/android/SoftKeys/Theme.java | 26 | 
2 files changed, 44 insertions, 1 deletions
| diff --git a/src/net/hoopajoo/android/SoftKeys/Generator.java b/src/net/hoopajoo/android/SoftKeys/Generator.java index f851e3d..42bd57e 100644 --- a/src/net/hoopajoo/android/SoftKeys/Generator.java +++ b/src/net/hoopajoo/android/SoftKeys/Generator.java @@ -64,6 +64,10 @@ public class Generator {              );          if( d != null ) { +            // resize? +            if( theme.getBoolean( new String[] { prefix + "_resize_background", "resize_background" } ) ) { +                d = resizeImage( d, iconSize, iconSize ); +            }              container.setBackgroundDrawable( d );          } @@ -130,6 +134,14 @@ public class Generator {                  );              if( d != null ) { +                if( theme.getBoolean( new String[] {  +                        prefix + "_resize_button_background_" + name,  +                        prefix + "_resize_button_background",  +                        "resize_button_background_" + name, +                        "resize_button_background" } ) ) { +                    d = resizeImage( d, iconSize, iconSize ); +                } +                  b.setBackgroundDrawable( d );              } @@ -171,7 +183,12 @@ public class Generator {          Matrix matrix = new Matrix();          matrix.postScale( scaleWidth, scaleHeight); -        return new BitmapDrawable( Bitmap.createBitmap(b, 0, 0, width, height, matrix, true) );  +        BitmapDrawable ret = new BitmapDrawable( Bitmap.createBitmap(b, 0, 0, width, height, matrix, true) ); +        // copy tile mode +        if( d instanceof BitmapDrawable ) { +            ret.setTileModeXY( ( (BitmapDrawable)d ).getTileModeX(), ( (BitmapDrawable)d ).getTileModeY() ); +        } +        return ret;        }  }      
\ No newline at end of file diff --git a/src/net/hoopajoo/android/SoftKeys/Theme.java b/src/net/hoopajoo/android/SoftKeys/Theme.java index 9a886c7..310fd31 100644 --- a/src/net/hoopajoo/android/SoftKeys/Theme.java +++ b/src/net/hoopajoo/android/SoftKeys/Theme.java @@ -69,6 +69,32 @@ public class Theme {          return( null );      } +    // these check theme config flags +    public boolean getBoolean( String[] name ) { +        return getBoolean( name, false ); +    } +     +    public boolean getBoolean( String[] name, boolean def ) { +        String flag = getString( name ); +        if( flag != null ) { +            // t/true is true, everything else is false +            if( flag.startsWith( "t" ) ) { +                return( true ); +            } +            return( false ); +        } +         +        return( def ); +    } +     +    public String getString( String[] name ) { +        IdPack i = getId( name, "string" ); +        if( i != null ) { +            return i.R.getString( i.id ); +        } +        return( null );         +    } +          // For use mostly with the notification bar, allowing custom themes to include      // new icons primarily, but since it's a layout they can do more than that      public RemoteViews getRemoteViews( String[] name ) { | 
