Use shapes to replace some png
|
@ -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
|
||||
|
|
|
@ -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
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Before Width: | Height: | Size: 1.9 KiB |
Before Width: | Height: | Size: 1.4 KiB |
Before Width: | Height: | Size: 981 B |
Before Width: | Height: | Size: 736 B |
Before Width: | Height: | Size: 1 KiB |
Before Width: | Height: | Size: 904 B |
Before Width: | Height: | Size: 840 B |
Before Width: | Height: | Size: 952 B |
10
app/src/main/res/drawable/field_add.xml
Normal 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>
|
||||
|
10
app/src/main/res/drawable/field_add_default.xml
Normal 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>
|
10
app/src/main/res/drawable/field_add_disabled.xml
Normal 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>
|
10
app/src/main/res/drawable/field_add_over.xml
Normal 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>
|
26
app/src/main/res/drawable/field_add_shape.xml
Normal 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>
|
|
@ -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>
|
||||
|
10
app/src/main/res/drawable/field_clean_default.xml
Normal 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>
|
10
app/src/main/res/drawable/field_clean_over.xml
Normal 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>
|
31
app/src/main/res/drawable/field_clean_shape.xml
Normal 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>
|
10
app/src/main/res/drawable/field_remove.xml
Normal 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>
|
||||
|
10
app/src/main/res/drawable/field_remove_default.xml
Normal 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>
|
10
app/src/main/res/drawable/field_remove_disabled.xml
Normal 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>
|
10
app/src/main/res/drawable/field_remove_over.xml
Normal 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>
|
12
app/src/main/res/drawable/field_remove_shape.xml
Normal 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>
|
5
app/src/main/res/drawable/led_background.xml
Normal 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>
|
5
app/src/main/res/drawable/led_error.xml
Normal 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>
|
5
app/src/main/res/drawable/led_not_registered.xml
Normal 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>
|
5
app/src/main/res/drawable/led_registered.xml
Normal 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>
|
|
@ -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>
|
|
@ -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>
|
||||
|
||||
|
|
|
@ -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}"
|
||||
|
|
|
@ -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>
|
||||
|
||||
|
|
|
@ -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>
|
||||
|
||||
|
|
|
@ -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>
|
||||
|
||||
|
|
|
@ -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"
|
||||
|
|
|
@ -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" />
|
||||
|
||||
|
|
|
@ -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}"
|
||||
|
|
|
@ -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>
|
||||
|
|
|
@ -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>
|