Use shapes to replace some png

This commit is contained in:
Sylvain Berfini 2021-01-13 15:44:16 +01:00
parent dc2c3dc327
commit 2affd3f5f7
39 changed files with 228 additions and 26 deletions

View file

@ -300,10 +300,10 @@ class AccountSettingsViewModel(val proxyConfig: ProxyConfig) : GenericSettingsVi
}
iconResource.value = when (proxyConfig.state) {
RegistrationState.Ok -> R.drawable.led_connected
RegistrationState.Ok -> R.drawable.led_registered
RegistrationState.Failed -> R.drawable.led_error
RegistrationState.Progress -> R.drawable.led_inprogress
else -> R.drawable.led_disconnected
RegistrationState.Progress -> R.drawable.led_registration_in_progress
else -> R.drawable.led_not_registered
}
iconContentDescription.value = when (proxyConfig.state) {
RegistrationState.Ok -> R.string.status_connected

View file

@ -103,10 +103,10 @@ open class StatusViewModel : ViewModel() {
private fun getStatusIconResource(state: RegistrationState): Int {
return when (state) {
RegistrationState.Ok -> R.drawable.led_connected
RegistrationState.Progress -> R.drawable.led_inprogress
RegistrationState.Ok -> R.drawable.led_registered
RegistrationState.Progress -> R.drawable.led_registration_in_progress
RegistrationState.Failed -> R.drawable.led_error
else -> R.drawable.led_disconnected
else -> R.drawable.led_not_registered
}
}
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 981 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 736 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 904 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 840 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 952 B

View file

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true"
android:drawable="@drawable/field_add_over" />
<item android:state_enabled="false"
android:drawable="@drawable/field_add_disabled" />
<item
android:drawable="@drawable/field_add_default" />
</selector>

View file

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item>
<shape android:shape="oval">
<solid android:color="@color/primary_color"/>
<size android:width="@dimen/field_button_size" android:height="@dimen/field_button_size"/>
</shape>
</item>
<item android:drawable="@drawable/field_add_shape" />
</layer-list>

View file

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item>
<shape android:shape="oval">
<solid android:color="@color/grey_color"/>
<size android:width="@dimen/field_button_size" android:height="@dimen/field_button_size"/>
</shape>
</item>
<item android:drawable="@drawable/field_add_shape" />
</layer-list>

View file

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item>
<shape android:shape="oval">
<solid android:color="@color/green_color"/>
<size android:width="@dimen/field_button_size" android:height="@dimen/field_button_size"/>
</shape>
</item>
<item android:drawable="@drawable/field_add_shape" />
</layer-list>

View file

@ -0,0 +1,26 @@
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:bottom="@dimen/field_shape_margin"
android:top="@dimen/field_shape_margin"
android:end="@dimen/field_shape_margin"
android:start="@dimen/field_shape_margin">
<shape android:shape="line">
<stroke android:width="2dp" android:color="@android:color/white" />
</shape>
</item>
<item
android:bottom="@dimen/field_shape_margin"
android:top="@dimen/field_shape_margin"
android:end="@dimen/field_shape_margin"
android:start="@dimen/field_shape_margin">
<rotate
android:fromDegrees="90"
android:pivotX="50%"
android:pivotY="50%">
<shape android:shape="line">
<stroke android:width="2dp" android:color="@android:color/white" />
</shape>
</rotate>
</item>
</layer-list>

View file

@ -1,8 +1,8 @@
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true"
android:drawable="@drawable/clean_field_over" />
android:drawable="@drawable/field_clean_over" />
<item
android:drawable="@drawable/clean_field_default" />
android:drawable="@drawable/field_clean_default" />
</selector>

View file

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item>
<shape android:shape="oval">
<solid android:color="@color/black_color"/>
<size android:width="@dimen/field_button_size" android:height="@dimen/field_button_size"/>
</shape>
</item>
<item android:drawable="@drawable/field_clean_shape" />
</layer-list>

View file

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item>
<shape android:shape="oval">
<solid android:color="@color/red_color"/>
<size android:width="@dimen/field_button_size" android:height="@dimen/field_button_size"/>
</shape>
</item>
<item android:drawable="@drawable/field_clean_shape" />
</layer-list>

View file

@ -0,0 +1,31 @@
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:bottom="@dimen/field_shape_margin"
android:top="@dimen/field_shape_margin"
android:end="@dimen/field_shape_margin"
android:start="@dimen/field_shape_margin">
<rotate
android:fromDegrees="45"
android:pivotX="50%"
android:pivotY="50%">
<shape android:shape="line">
<stroke android:width="2dp" android:color="@android:color/white" />
</shape>
</rotate>
</item>
<item
android:bottom="@dimen/field_shape_margin"
android:top="@dimen/field_shape_margin"
android:end="@dimen/field_shape_margin"
android:start="@dimen/field_shape_margin">
<rotate
android:fromDegrees="135"
android:pivotX="50%"
android:pivotY="50%">
<shape android:shape="line">
<stroke android:width="2dp" android:color="@android:color/white" />
</shape>
</rotate>
</item>
</layer-list>

View file

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true"
android:drawable="@drawable/field_remove_over" />
<item android:state_enabled="false"
android:drawable="@drawable/field_remove_disabled" />
<item
android:drawable="@drawable/field_remove_default" />
</selector>

View file

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item>
<shape android:shape="oval">
<solid android:color="@color/black_color"/>
<size android:width="@dimen/field_button_size" android:height="@dimen/field_button_size"/>
</shape>
</item>
<item android:drawable="@drawable/field_remove_shape" />
</layer-list>

View file

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item>
<shape android:shape="oval">
<solid android:color="@color/grey_color"/>
<size android:width="@dimen/field_button_size" android:height="@dimen/field_button_size"/>
</shape>
</item>
<item android:drawable="@drawable/field_remove_shape" />
</layer-list>

View file

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item>
<shape android:shape="oval">
<solid android:color="@color/red_color"/>
<size android:width="@dimen/field_button_size" android:height="@dimen/field_button_size"/>
</shape>
</item>
<item android:drawable="@drawable/field_remove_shape" />
</layer-list>

View file

@ -0,0 +1,12 @@
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:bottom="@dimen/field_shape_margin"
android:top="@dimen/field_shape_margin"
android:end="@dimen/field_shape_margin"
android:start="@dimen/field_shape_margin">
<shape android:shape="line">
<stroke android:width="2dp" android:color="@android:color/white" />
</shape>
</item>
</layer-list>

View file

@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="oval">
<solid android:color="@color/white_color"/>
<size android:width="20dp" android:height="20dp"/>
</shape>

View file

@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="oval">
<solid android:color="@color/led_error"/>
<size android:width="15dp" android:height="15dp"/>
</shape>

View file

@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="oval">
<solid android:color="@color/led_not_registered"/>
<size android:width="15dp" android:height="15dp"/>
</shape>

View file

@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="oval">
<solid android:color="@color/led_registered"/>
<size android:width="15dp" android:height="15dp"/>
</shape>

View file

@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="oval">
<solid android:color="@color/led_registration_in_progress"/>
<size android:width="15dp" android:height="15dp"/>
</shape>

View file

@ -61,7 +61,7 @@
android:layout_centerVertical="true"
android:paddingLeft="5dp"
android:paddingRight="5dp"
android:src="@drawable/clean_field" />
android:src="@drawable/field_clean" />
</RelativeLayout>

View file

@ -33,7 +33,8 @@
<ImageView
android:id="@+id/status_led"
android:src="@{viewModel.registrationStatusDrawable, default=@drawable/led_disconnected}"
android:background="@drawable/led_background"
android:src="@{viewModel.registrationStatusDrawable, default=@drawable/led_not_registered}"
android:onClick="@{refreshClickListener}"
android:contentDescription="@{viewModel.registrationStatusText}"
android:layout_width="20dp"
@ -41,7 +42,7 @@
android:layout_centerInParent="true"
android:layout_toRightOf="@id/stats_button"
android:adjustViewBounds="true"
android:paddingLeft="5dp" />
android:padding="2dp" />
<TextView
android:text="@{viewModel.registrationStatusText, default=@string/status_not_connected}"

View file

@ -32,7 +32,7 @@
android:layout_height="20dp"
android:layout_alignTop="@id/pendingImageForUpload"
android:layout_alignRight="@id/pendingImageForUpload"
android:src="@drawable/clean_field" />
android:src="@drawable/field_clean" />
<ImageView
android:id="@+id/pendingVideoForUpload"
@ -59,7 +59,7 @@
android:layout_height="20dp"
android:layout_alignTop="@id/pendingVideoForUpload"
android:layout_alignRight="@id/pendingVideoForUpload"
android:src="@drawable/clean_field" />
android:src="@drawable/field_clean" />
<TextView
android:id="@+id/pendingFileForUpload"
@ -81,7 +81,7 @@
android:layout_height="20dp"
android:layout_alignTop="@id/pendingFileForUpload"
android:layout_alignRight="@id/pendingFileForUpload"
android:src="@drawable/clean_field" />
android:src="@drawable/field_clean" />
</RelativeLayout>

View file

@ -161,13 +161,12 @@
<ImageView
android:onClick="@{() -> viewModel.addEmptySipAddress()}"
android:contentDescription="@string/content_description_add_sip_address_field"
android:layout_width="30dp"
android:layout_height="30dp"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:src="@drawable/field_add"
android:contentDescription="@string/content_description_add_sip_address_field"
android:background="@drawable/round_orange_button_background" />
android:src="@drawable/field_add" />
</RelativeLayout>
@ -199,8 +198,7 @@
android:layout_height="30dp"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:src="@drawable/field_add"
android:background="@drawable/round_orange_button_background" />
android:src="@drawable/field_add" />
</RelativeLayout>

View file

@ -41,8 +41,7 @@
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:src="@drawable/field_remove"
android:layout_marginLeft="5dp"
android:background="@drawable/field_button_background" />
android:layout_marginLeft="5dp" />
</RelativeLayout>

View file

@ -16,7 +16,9 @@
<ImageView
android:id="@+id/led"
android:src="@{data.iconResource}"
android:background="@drawable/led_background"
android:padding="2dp"
android:src="@{data.iconResource, default=@drawable/led_not_registered}"
android:contentDescription="@{data.iconContentDescription}"
android:layout_width="wrap_content"
android:layout_height="wrap_content"

View file

@ -38,7 +38,7 @@
android:layout_height="20dp"
android:layout_marginLeft="10dp"
android:layout_marginRight="20dp"
android:src="@drawable/clean_field"
android:src="@drawable/field_clean"
android:layout_alignParentRight="true"
android:layout_centerVertical="true" />

View file

@ -33,15 +33,16 @@
<ImageView
android:id="@+id/status_led"
android:src="@{viewModel.registrationStatusDrawable, default=@drawable/led_disconnected}"
android:background="@drawable/led_background"
android:src="@{viewModel.registrationStatusDrawable, default=@drawable/led_not_registered}"
android:onClick="@{refreshClickListener}"
android:contentDescription="@{viewModel.registrationStatusText}"
android:layout_width="20dp"
android:layout_height="wrap_content"
android:padding="2dp"
android:layout_centerInParent="true"
android:layout_toRightOf="@id/menu_button"
android:adjustViewBounds="true"
android:paddingLeft="5dp" />
android:adjustViewBounds="true" />
<TextView
android:text="@{viewModel.registrationStatusText, default=@string/status_not_connected}"

View file

@ -30,4 +30,9 @@
<color name="disabled_color">#808080</color>
<color name="contact_disabled_color">#99ffffff</color>
<color name="led_registered">#96c11f</color>
<color name="led_registration_in_progress">#ffa645</color>
<color name="led_not_registered">#e1e1e1</color>
<color name="led_error">#ff0000</color>
</resources>

View file

@ -15,4 +15,6 @@
<dimen name="call_button_size">60dp</dimen>
<dimen name="call_options_menu_translate_y">300dp</dimen>
<dimen name="call_audio_routes_menu_translate_y">240dp</dimen>
<dimen name="field_button_size">20dp</dimen>
<dimen name="field_shape_margin">3dp</dimen>
</resources>