[Android Themes] evilisto:
This mod is originally posted in Nexus S theme forum :

[MOD] Full size Album Art on Stock ICS Lockscreen

Preview :

-----------------------------------------------------------------------------

Patch(diff) : download

diff -rupN ./a/core/res/res/layout/keyguard_screen_tab_unlock.xml ./b/core/res/res/layout/keyguard_screen_tab_unlock.xml
--- ./a/core/res/res/layout/keyguard_screen_tab_unlock.xml	2012-03-20 17:15:22.000000000 +0900
+++ ./b/core/res/res/layout/keyguard_screen_tab_unlock.xml	2012-05-23 01:52:48.153006000 +0900
@@ -21,179 +21,185 @@
state of the device, as well as instructions on how to get past it
depending on the state of the device. It is the same for landscape
and portrait.-->
-<GridLayout
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:orientation="vertical"
- android:layout_width="match_parent"
- android:layout_height="match_parent"
- android:gravity="center_horizontal">
-
- <com.android.internal.widget.DigitalClock android:id="@+id/time"
- android:layout_marginTop="@dimen/keyguard_lockscreen_status_line_clockfont_top_margin"
- android:layout_marginBottom="12dip"
- android:layout_marginRight="@dimen/keyguard_lockscreen_status_line_font_right_margin"
- android:layout_gravity="right">
-
- <!-- Because we can't have multi-tone fonts, we render two TextViews, one on
- top of the other. Hence the redundant layout... -->
- <TextView android:id="@+id/timeDisplayBackground"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:singleLine="true"
- android:ellipsize="none"
- android:textSize="@dimen/keyguard_lockscreen_clock_font_size"
- android:textAppearance="?android:attr/textAppearanceMedium"
- android:layout_marginBottom="6dip"
- android:textColor="@color/lockscreen_clock_background"
- />
-
- <TextView android:id="@+id/timeDisplayForeground"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:singleLine="true"
- android:ellipsize="none"
- android:textSize="@dimen/keyguard_lockscreen_clock_font_size"
- android:textAppearance="?android:attr/textAppearanceMedium"
- android:layout_marginBottom="6dip"
- android:textColor="@color/lockscreen_clock_foreground"
- android:layout_alignLeft="@id/timeDisplayBackground"
- android:layout_alignTop="@id/timeDisplayBackground"
- />
-
- </com.android.internal.widget.DigitalClock>
-
- <LinearLayout
- android:orientation="horizontal"
- android:layout_gravity="right"
- android:layout_marginRight="@dimen/keyguard_lockscreen_status_line_font_right_margin">
-
- <TextView
- android:id="@+id/date"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:singleLine="true"
- android:ellipsize="marquee"
- android:textAppearance="?android:attr/textAppearanceMedium"
- android:textSize="@dimen/keyguard_lockscreen_status_line_font_size"
- />
-
- <TextView
- android:id="@+id/alarm_status"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:layout_marginLeft="16dip"
- android:singleLine="true"
- android:ellipsize="marquee"
- android:textAppearance="?android:attr/textAppearanceMedium"
- android:textSize="@dimen/keyguard_lockscreen_status_line_font_size"
- android:drawablePadding="4dip"
- />
-
- </LinearLayout>
-
- <TextView
- android:id="@+id/status1"
- android:layout_gravity="right"
- android:layout_marginRight="@dimen/keyguard_lockscreen_status_line_font_right_margin"
- android:singleLine="true"
- android:ellipsize="marquee"
- android:textAppearance="?android:attr/textAppearanceMedium"
- android:textSize="@dimen/keyguard_lockscreen_status_line_font_size"
- android:drawablePadding="4dip"
- />
-
- <Space android:layout_gravity="fill" />
-
- <!-- emergency call button shown when sim is PUKd and tab_selector is hidden -->
- <Button
- android:id="@+id/emergencyCallButton"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:layout_marginTop="4dip"
- android:layout_marginRight="16dip"
- android:layout_gravity="right"
- android:drawableLeft="@*android:drawable/lockscreen_emergency_button"
- style="?android:attr/buttonBarButtonStyle"
- android:drawablePadding="4dip"
- android:text="@*android:string/lockscreen_emergency_call"
- android:visibility="gone"
- />
-
- <RelativeLayout
- android:layout_width="match_parent"
- android:layout_height="302dip">
-
- <com.android.internal.widget.multiwaveview.MultiWaveView
- android:id="@+id/unlock_widget"
- android:orientation="horizontal"
- android:layout_width="match_parent"
- android:layout_height="match_parent"
- android:layout_alignParentBottom="true"
-
- android:targetDrawables="@array/lockscreen_targets_with_camera"
- android:targetDescriptions="@array/lockscreen_target_descriptions_with_camera"
- android:directionDescriptions="@array/lockscreen_direction_descriptions"
- android:handleDrawable="@drawable/ic_lockscreen_handle"
- android:waveDrawable="@drawable/ic_lockscreen_outerring"
- android:outerRadius="@dimen/multiwaveview_target_placement_radius"
- android:snapMargin="@dimen/multiwaveview_snap_margin"
- android:hitRadius="@dimen/multiwaveview_hit_radius"
- android:rightChevronDrawable="@drawable/ic_lockscreen_chevron_right"
- android:horizontalOffset="0dip"
- android:verticalOffset="60dip"
- android:feedbackCount="3"
- android:vibrationDuration="20"
- />
-
- <TextView
- android:id="@+id/carrier"
- android:layout_width="fill_parent"
- android:layout_height="wrap_content"
- android:layout_alignParentBottom="true"
- android:layout_marginBottom="12dip"
- android:gravity="center_horizontal"
- android:singleLine="true"
- android:ellipsize="marquee"
- android:textAppearance="?android:attr/textAppearanceMedium"
- android:textSize="@dimen/keyguard_lockscreen_status_line_font_size"
- android:textColor="?android:attr/textColorSecondary"
- />
-
- </RelativeLayout>
-
- <LinearLayout
- android:orientation="horizontal"
- android:layout_width="match_parent"
- style="?android:attr/buttonBarStyle"
- android:gravity="center"
- android:weightSum="2">
-
- <Button android:id="@+id/emergencyCallButton"
- android:layout_gravity="center_horizontal"
- android:layout_width="0dip"
- android:layout_height="wrap_content"
- android:layout_weight="1"
- style="?android:attr/buttonBarButtonStyle"
- android:textSize="@dimen/keyguard_lockscreen_status_line_font_size"
- android:text="@*android:string/lockscreen_emergency_call"
- android:drawableLeft="@*android:drawable/lockscreen_emergency_button"
- android:drawablePadding="0dip"
- android:visibility="gone"
- />
-
- </LinearLayout>
-
- <!-- Music transport control -->
- <include android:id="@+id/transport"
- layout="@layout/keyguard_transport_control"
- android:layout_row="0"
- android:layout_column="0"
- android:layout_rowSpan="4"
- android:layout_columnSpan="1"
- android:layout_gravity="fill"
- android:layout_width="0dip"
- android:layout_height="0dip"
- />

-</GridLayout>
+<RelativeLayout
+	xmlns:android="http://schemas.android.com/apk/res/android"
+	android:layout_width="match_parent"
+	android:layout_height="match_parent"
+	android:gravity="center_horizontal">
+
+	<RelativeLayout
+ android:layout_width="match_parent"
+ android:layout_height="match_parent">
+
+ <com.android.internal.widget.multiwaveview.MultiWaveView
+	android:id="@+id/unlock_widget"
+	android:orientation="horizontal"
+	android:layout_width="match_parent"
+	android:layout_height="290dip"
+	android:layout_alignParentBottom="true"
+
+	android:targetDrawables="@array/lockscreen_targets_with_camera"
+	android:targetDescriptions="@array/lockscreen_target_descriptions_with_camera"
+	android:directionDescriptions="@array/lockscreen_direction_descriptions"
+	android:handleDrawable="@drawable/ic_lockscreen_handle"
+	android:waveDrawable="@drawable/ic_lockscreen_outerring"
+	android:outerRadius="@dimen/multiwaveview_target_placement_radius"
+	android:snapMargin="@dimen/multiwaveview_snap_margin"
+	android:hitRadius="@dimen/multiwaveview_hit_radius"
+	android:rightChevronDrawable="@drawable/ic_lockscreen_chevron_right"
+	android:horizontalOffset="0dip"
+	android:verticalOffset="72dip"
+	android:feedbackCount="3"
+	android:vibrationDuration="20"
+	/>
+
+ <TextView
+	android:id="@+id/carrier"
+	android:layout_width="fill_parent"
+	android:layout_height="wrap_content"
+	android:layout_alignParentBottom="true"
+	android:layout_marginBottom="12dip"
+	android:gravity="center_horizontal"
+	android:singleLine="true"
+	android:ellipsize="marquee"
+	android:textAppearance="?android:attr/textAppearanceMedium"
+	android:textSize="@dimen/keyguard_lockscreen_status_line_font_size"
+	android:textColor="?android:attr/textColorSecondary"
+	/>
+
+	</RelativeLayout>
+
+	<GridLayout
+	android:orientation="vertical"
+	android:layout_width="match_parent"
+	android:layout_height="match_parent"
+	android:gravity="center_horizontal">
+
+	<com.android.internal.widget.DigitalClock android:id="@+id/time"
+	android:layout_marginTop="@dimen/keyguard_lockscreen_status_line_clockfont_top_margin"
+	android:layout_marginBottom="12dip"
+	android:layout_marginRight="@dimen/keyguard_lockscreen_status_line_font_right_margin"
+	android:layout_gravity="right">
+
+	<!-- Because we can't have multi-tone fonts, we render two TextViews, one on
+	top of the other. Hence the redundant layout... -->
+	<TextView android:id="@+id/timeDisplayBackground"
+	android:layout_width="wrap_content"
+	android:layout_height="wrap_content"
+	android:singleLine="true"
+	android:ellipsize="none"
+	android:textSize="@dimen/keyguard_lockscreen_clock_font_size"
+	android:textAppearance="?android:attr/textAppearanceMedium"
+	android:layout_marginBottom="6dip"
+	android:textColor="@color/lockscreen_clock_background"
+	/>
+
+	<TextView android:id="@+id/timeDisplayForeground"
+	android:layout_width="wrap_content"
+	android:layout_height="wrap_content"
+	android:singleLine="true"
+	android:ellipsize="none"
+	android:textSize="@dimen/keyguard_lockscreen_clock_font_size"
+	android:textAppearance="?android:attr/textAppearanceMedium"
+	android:layout_marginBottom="6dip"
+	android:textColor="@color/lockscreen_clock_foreground"
+	android:layout_alignLeft="@id/timeDisplayBackground"
+	android:layout_alignTop="@id/timeDisplayBackground"
+	/>
+
+	</com.android.internal.widget.DigitalClock>
+
+	<LinearLayout
+	android:orientation="horizontal"
+	android:layout_gravity="right"
+	android:layout_marginRight="@dimen/keyguard_lockscreen_status_line_font_right_margin">
+
+	<TextView
+	android:id="@+id/date"
+	android:layout_width="wrap_content"
+	android:layout_height="wrap_content"
+	android:singleLine="true"
+	android:ellipsize="marquee"
+	android:textAppearance="?android:attr/textAppearanceMedium"
+	android:textSize="@dimen/keyguard_lockscreen_status_line_font_size"
+	/>
+
+	<TextView
+	android:id="@+id/alarm_status"
+	android:layout_width="wrap_content"
+	android:layout_height="wrap_content"
+	android:layout_marginLeft="16dip"
+	android:singleLine="true"
+	android:ellipsize="marquee"
+	android:textAppearance="?android:attr/textAppearanceMedium"
+	android:textSize="@dimen/keyguard_lockscreen_status_line_font_size"
+	android:drawablePadding="4dip"
+	/>
+
+	</LinearLayout>
+
+	<TextView
+	android:id="@+id/status1"
+	android:layout_gravity="right"
+	android:layout_marginRight="@dimen/keyguard_lockscreen_status_line_font_right_margin"
+	android:singleLine="true"
+	android:ellipsize="marquee"
+	android:textAppearance="?android:attr/textAppearanceMedium"
+	android:textSize="@dimen/keyguard_lockscreen_status_line_font_size"
+	android:drawablePadding="4dip"
+	/>
+
+	<Space android:layout_gravity="fill" />
+
+	<!-- emergency call button shown when sim is PUKd and tab_selector is hidden -->
+	<Button
+	android:id="@+id/emergencyCallButton"
+	android:layout_width="wrap_content"
+	android:layout_height="wrap_content"
+	android:layout_marginTop="4dip"
+	android:layout_marginRight="16dip"
+	android:layout_gravity="right"
+	android:drawableLeft="@*android:drawable/lockscreen_emergency_button"
+	style="?android:attr/buttonBarButtonStyle"
+	android:drawablePadding="4dip"
+	android:text="@*android:string/lockscreen_emergency_call"
+	android:visibility="gone"
+	/>
+
+	<LinearLayout
+	android:orientation="horizontal"
+	android:layout_width="match_parent"
+	style="?android:attr/buttonBarStyle"
+	android:gravity="center"
+	android:weightSum="2">
+
+	<Button android:id="@+id/emergencyCallButton"
+	android:layout_gravity="center_horizontal"
+	android:layout_width="0dip"
+	android:layout_height="wrap_content"
+	android:layout_weight="1"
+	style="?android:attr/buttonBarButtonStyle"
+	android:textSize="@dimen/keyguard_lockscreen_status_line_font_size"
+	android:text="@*android:string/lockscreen_emergency_call"
+	android:drawableLeft="@*android:drawable/lockscreen_emergency_button"
+	android:drawablePadding="0dip"
+	android:visibility="gone"
+	/>
+
+	</LinearLayout>
+
+	<!-- Music transport control -->
+	<include android:id="@+id/transport"
+	layout="@layout/keyguard_transport_control"
+	android:layout_row="0"
+	android:layout_column="0"
+	android:layout_rowSpan="16"
+	android:layout_columnSpan="1"
+	android:layout_gravity="fill"
+	android:layout_width="0dip"
+	android:layout_height="0dip"
+	/>

+	</GridLayout>
+</RelativeLayout>
diff -rupN ./a/core/res/res/layout/keyguard_transport_control.xml ./b/core/res/res/layout/keyguard_transport_control.xml
--- ./a/core/res/res/layout/keyguard_transport_control.xml	2012-03-20 17:15:22.000000000 +0900
+++ ./b/core/res/res/layout/keyguard_transport_control.xml	2012-05-23 00:05:15.563022000 +0900
@@ -24,7 +24,7 @@
<!-- FrameLayout used as scrim to show between album art and buttons -->
<FrameLayout
android:layout_width="match_parent"
- android:layout_height="match_parent"
+ android:layout_height="320dip"
android:foreground="@drawable/ic_lockscreen_player_background">
<!-- We use ImageView for its cropping features, otherwise could be android:background -->
<ImageView
@@ -41,7 +41,8 @@
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="wrap_content"
- android:layout_gravity="bottom">
+ android:layout_gravity="bottom"
+ android:layout_marginBottom="100dip">
<TextView
android:id="@+id/title"
android:layout_width="match_parent"

-----------------------------------------------------------------------------

or you can make this mod using apktool too.

1) framework-res.apk/res/layout/keyguard_screen_tab_unlock.xml

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout android:gravity="center_horizontal" android:layout_width="fill_parent" android:layout_height="fill_parent"
xmlns:android="http://schemas.android.com/apk/res/android">
<RelativeLayout android:layout_width="fill_parent" android:layout_height="fill_parent">
<com.android.internal.widget.multiwaveview.MultiWaveView android:orientation="horizontal" android:id="@id/unlock_widget" android:layout_width="fill_parent" android:layout_height="290.0dip" android:layout_alignParentBottom="true" android:targetDescriptions="@array/lockscreen_target_descriptions_with_camera" android:directionDescriptions="@array/lockscreen_direction_descriptions" android:targetDrawables="@array/lockscreen_targets_with_camera" android:handleDrawable="@drawable/ic_lockscreen_handle" android:rightChevronDrawable="@drawable/ic_lockscreen_chevron_right" android:waveDrawable="@drawable/ic_lockscreen_outerring" android:outerRadius="@dimen/multiwaveview_target_placement_radius" android:hitRadius="@dimen/multiwaveview_hit_radius" android:vibrationDuration="20" android:snapMargin="@dimen/multiwaveview_snap_margin" android:feedbackCount="3" android:verticalOffset="72.0dip" android:horizontalOffset="0.0dip" />
<TextView android:textAppearance="?textAppearanceMedium" android:textSize="@dimen/keyguard_lockscreen_status_line_font_size" android:textColor="?textColorSecondary" android:ellipsize="marquee" android:gravity="center_horizontal" android:id="@id/carrier" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_marginBottom="12.0dip" android:singleLine="true" android:layout_alignParentBottom="true" />
</RelativeLayout>
<GridLayout android:gravity="center_horizontal" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent">
<com.android.internal.widget.DigitalClock android:layout_gravity="right" android:id="@id/time" android:layout_marginTop="@dimen/keyguard_lockscreen_status_line_clockfont_top_margin" android:layout_marginRight="@dimen/keyguard_lockscreen_status_line_font_right_margin" android:layout_marginBottom="12.0dip">
<TextView android:textAppearance="?textAppearanceMedium" android:textSize="@dimen/keyguard_lockscreen_clock_font_size" android:textColor="@color/lockscreen_clock_background" android:ellipsize="none" android:id="@id/timeDisplayBackground" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginBottom="6.0dip" android:singleLine="true" />
<TextView android:textAppearance="?textAppearanceMedium" android:textSize="@dimen/keyguard_lockscreen_clock_font_size" android:textColor="@color/lockscreen_clock_foreground" android:ellipsize="none" android:id="@id/timeDisplayForeground" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginBottom="6.0dip" android:singleLine="true" android:layout_alignLeft="@id/timeDisplayBackground" android:layout_alignTop="@id/timeDisplayBackground" />
</com.android.internal.widget.DigitalClock>
<LinearLayout android:layout_gravity="right" android:orientation="horizontal" android:layout_marginRight="@dimen/keyguard_lockscreen_status_line_font_right_margin">
<TextView android:textAppearance="?textAppearanceMedium" android:textSize="@dimen/keyguard_lockscreen_status_line_font_size" android:ellipsize="marquee" android:id="@id/date" android:layout_width="wrap_content" android:layout_height="wrap_content" android:singleLine="true" />
<TextView android:textAppearance="?textAppearanceMedium" android:textSize="@dimen/keyguard_lockscreen_status_line_font_size" android:ellipsize="marquee" android:id="@id/alarm_status" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="16.0dip" android:singleLine="true" android:drawablePadding="4.0dip" />
</LinearLayout>
<TextView android:textAppearance="?textAppearanceMedium" android:textSize="@dimen/keyguard_lockscreen_status_line_font_size" android:ellipsize="marquee" android:layout_gravity="right" android:id="@id/status1" android:layout_marginRight="@dimen/keyguard_lockscreen_status_line_font_right_margin" android:singleLine="true" android:drawablePadding="4.0dip" />
<Space android:layout_gravity="fill" />
<Button android:layout_gravity="right" android:id="@id/emergencyCallButton" android:visibility="gone" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="4.0dip" android:layout_marginRight="16.0dip" android:text="@string/lockscreen_emergency_call" android:drawableLeft="@drawable/lockscreen_emergency_button" android:drawablePadding="4.0dip" style="?android:attr/buttonBarButtonStyle" />
<LinearLayout android:gravity="center" android:orientation="horizontal" android:layout_width="fill_parent" android:weightSum="2.0" style="?android:attr/buttonBarStyle">
<Button android:textSize="@dimen/keyguard_lockscreen_status_line_font_size" android:layout_gravity="center_horizontal" android:id="@id/emergencyCallButton" android:visibility="gone" android:layout_width="0.0dip" android:layout_height="wrap_content" android:text="@string/lockscreen_emergency_call" android:drawableLeft="@drawable/lockscreen_emergency_button" android:drawablePadding="0.0dip" android:layout_weight="1.0" style="?android:attr/buttonBarButtonStyle" />
</LinearLayout>
<include android:layout_gravity="fill" android:id="@id/transport" android:layout_width="0.0dip" android:layout_height="0.0dip" android:layout_column="0" android:layout_row="0" android:layout_rowSpan="16" android:layout_columnSpan="1" layout="@layout/keyguard_transport_control" />
</GridLayout>
</RelativeLayout>

2) framework-res.apk/res/layout/keyguard_transport_control.xml

<?xml version="1.0" encoding="utf-8"?>
<com.android.internal.widget.TransportControlView android:id="@id/transport_controls"
xmlns:android="http://schemas.android.com/apk/res/android">
<FrameLayout android:layout_width="fill_parent" android:layout_height="320.0dip" android:foreground="@drawable/ic_lockscreen_player_background">
<ImageView android:layout_gravity="fill" android:id="@id/albumart" android:layout_width="fill_parent" android:layout_height="fill_parent" android:scaleType="centerCrop" android:adjustViewBounds="false" />
</FrameLayout>
<LinearLayout android:layout_gravity="bottom" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_marginBottom="100.0dip">
<TextView android:textAppearance="?textAppearanceMedium" android:ellipsize="end" android:gravity="center_horizontal" android:id="@id/title" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_marginLeft="16.0dip" android:layout_marginTop="8.0dip" android:layout_marginRight="16.0dip" android:singleLine="true" />
<LinearLayout android:orientation="horizontal" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_marginTop="5.0dip">
<FrameLayout android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_weight="1.0">
<ImageView android:layout_gravity="center" android:id="@id/btn_prev" android:background="?selectableItemBackground" android:padding="10.0dip" android:clickable="true" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/ic_media_previous" android:contentDescription="@string/lockscreen_transport_prev_description" />
</FrameLayout>
<FrameLayout android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_weight="1.0">
<ImageView android:layout_gravity="center" android:id="@id/btn_play" android:background="?selectableItemBackground" android:padding="10.0dip" android:clickable="true" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/ic_media_play" android:contentDescription="@string/lockscreen_transport_play_description" />
</FrameLayout>
<FrameLayout android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_weight="1.0">
<ImageView android:layout_gravity="center" android:id="@id/btn_next" android:background="?selectableItemBackground" android:padding="10.0dip" android:clickable="true" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/ic_media_next" android:contentDescription="@string/lockscreen_transport_next_description" />
</FrameLayout>
</LinearLayout>
</LinearLayout>
</com.android.internal.widget.TransportControlView>

-----------------------------------------------------------------------------