Migrate app to Material Design 3

without dynamic colors, trying to look as before
This commit is contained in:
Torsten Grote
2024-05-10 14:37:00 -03:00
parent ab223da18c
commit e8ee0f4b44
63 changed files with 412 additions and 337 deletions

View File

@@ -16,7 +16,7 @@ def getStdout = { command, defaultValue ->
}
android {
compileSdkVersion 33
compileSdk 33
buildToolsVersion '33.0.0'
packagingOptions {
@@ -108,16 +108,15 @@ dependencies {
implementation project(':bramble-android')
implementation project(':briar-core')
implementation 'androidx.fragment:fragment:1.5.5'
implementation 'androidx.preference:preference:1.2.0'
implementation 'androidx.exifinterface:exifinterface:1.3.6'
implementation 'androidx.lifecycle:lifecycle-viewmodel-ktx:2.5.1'
implementation 'androidx.lifecycle:lifecycle-livedata:2.5.1'
// newer versions of the libraries below require compileSdk 34
implementation 'androidx.fragment:fragment:1.6.2'
implementation 'androidx.preference:preference:1.2.1'
implementation 'androidx.exifinterface:exifinterface:1.3.7'
implementation 'androidx.lifecycle:lifecycle-viewmodel-ktx:2.6.2'
implementation 'androidx.lifecycle:lifecycle-livedata:2.6.2'
implementation 'androidx.constraintlayout:constraintlayout:2.1.4'
// check https://github.com/material-components/material-components-android/issues/3191
// before upgrading material library
implementation 'com.google.android.material:material:1.7.0'
implementation 'com.google.android.material:material:1.9.0'
implementation 'androidx.recyclerview:recyclerview-selection:1.1.0'
// force kotlin standard lib to latest version to prevent jetifier issues
@@ -131,7 +130,7 @@ dependencies {
implementation 'com.vanniktech:emoji-google:0.9.0' // newer versions are more work to adapt
implementation 'com.github.kobakei:MaterialFabSpeedDial:1.2.1'
implementation 'com.github.chrisbanes:PhotoView:2.3.0'
def glideVersion = '4.14.2'
def glideVersion = '4.16.0'
implementation("com.github.bumptech.glide:glide:$glideVersion") {
exclude group: 'com.android.support'
exclude module: 'disklrucache' // when there's no disk cache, we can't accidentally use it

View File

@@ -1,5 +1,6 @@
package org.briarproject.briar.android.account;
import android.annotation.SuppressLint;
import android.app.KeyguardManager;
import android.content.ActivityNotFoundException;
import android.content.Intent;
@@ -113,6 +114,7 @@ public class UnlockActivity extends BaseActivity {
}
@Override
@SuppressLint("MissingSuperCall")
public void onBackPressed() {
moveTaskToBack(true);
}

View File

@@ -1,5 +1,6 @@
package org.briarproject.briar.android.login;
import android.annotation.SuppressLint;
import android.content.Intent;
import android.os.Bundle;
@@ -74,6 +75,7 @@ public class StartupActivity extends BaseActivity implements
}
@Override
@SuppressLint("MissingSuperCall")
public void onBackPressed() {
// Move task and activity to the background instead of showing another
// password prompt.

View File

@@ -1,5 +1,6 @@
package org.briarproject.briar.android.reporting;
import android.annotation.SuppressLint;
import android.content.Intent;
import android.os.Bundle;
import android.os.Handler;
@@ -87,6 +88,7 @@ public class CrashReportActivity extends BaseActivity
}
@Override
@SuppressLint("MissingSuperCall")
public void onBackPressed() {
exit();
}

View File

@@ -8,12 +8,13 @@ import android.widget.Button;
import android.widget.FrameLayout;
import android.widget.ProgressBar;
import com.google.android.material.button.MaterialButton;
import org.briarproject.briar.R;
import org.briarproject.nullsafety.NotNullByDefault;
import androidx.annotation.Nullable;
import androidx.appcompat.view.ContextThemeWrapper;
import androidx.appcompat.widget.AppCompatButton;
import static android.content.Context.LAYOUT_INFLATER_SERVICE;
import static androidx.transition.TransitionManager.beginDelayedTransition;
@@ -47,8 +48,8 @@ public class BriarButton extends FrameLayout {
attributes.recycle();
ContextThemeWrapper wrapper = new ContextThemeWrapper(context, style);
button = isInEditMode() ? new AppCompatButton(context) :
new AppCompatButton(wrapper, null, style);
button = isInEditMode() ? new MaterialButton(context) :
new MaterialButton(wrapper);
button.setText(text);
addView(button);
progressBar = findViewById(R.id.briar_button_progress_bar);

View File

@@ -108,11 +108,13 @@
app:layout_constraintTop_toBottomOf="@id/strength_meter"
tools:enabled="true" />
<ProgressBar
<com.google.android.material.progressindicator.CircularProgressIndicator
android:id="@+id/progress_wheel"
style="@style/CircularProgress"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:visibility="invisible"
app:layout_constraintBottom_toBottomOf="@+id/change_password"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="@id/change_password" />

View File

@@ -12,7 +12,7 @@
android:layout_width="match_parent"
android:layout_height="wrap_content">
<androidx.appcompat.widget.Toolbar
<com.google.android.material.appbar.MaterialToolbar
android:id="@+id/toolbar"
style="@style/BriarToolbar"
android:layout_width="match_parent"
@@ -40,7 +40,7 @@
</LinearLayout>
</androidx.appcompat.widget.Toolbar>
</com.google.android.material.appbar.MaterialToolbar>
</com.google.android.material.appbar.AppBarLayout>

View File

@@ -35,8 +35,9 @@
android:text="@string/create_forum_button"
tools:enabled="true" />
<ProgressBar
<com.google.android.material.progressindicator.CircularProgressIndicator
android:id="@+id/createForumProgressBar"
style="@style/CircularProgress"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"

View File

@@ -18,7 +18,7 @@
android:layout_height="wrap_content"
android:background="@color/msg_status_bubble_background">
<androidx.appcompat.widget.Toolbar
<com.google.android.material.appbar.MaterialToolbar
android:id="@+id/toolbar"
style="@style/BriarToolbar"
android:layout_width="match_parent"
@@ -50,7 +50,7 @@
</LinearLayout>
</androidx.appcompat.widget.Toolbar>
</com.google.android.material.appbar.MaterialToolbar>
</com.google.android.material.appbar.AppBarLayout>

View File

@@ -5,9 +5,9 @@
android:layout_width="match_parent"
android:layout_height="match_parent">
<ProgressBar
<com.google.android.material.progressindicator.CircularProgressIndicator
android:id="@+id/progressBar"
style="?android:progressBarStyleLarge"
style="@style/CircularProgress.Large"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"

View File

@@ -19,9 +19,9 @@
</org.briarproject.briar.android.view.LargeTextInputView>
<ProgressBar
<com.google.android.material.progressindicator.CircularProgressIndicator
android:id="@+id/progressBar"
style="?android:attr/progressBarStyleLarge"
style="@style/CircularProgress.Large"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"

View File

@@ -6,12 +6,14 @@
<!-- Button gets added programmatically so we can pass on the styles -->
<ProgressBar
<com.google.android.material.progressindicator.CircularProgressIndicator
android:id="@+id/briar_button_progress_bar"
style="@style/CircularProgress"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:visibility="invisible"
tools:progress="50"
tools:visibility="visible" />
</merge>

View File

@@ -15,9 +15,9 @@
tools:listitem="@layout/list_item_contact"
tools:visibility="visible" />
<ProgressBar
<com.google.android.material.progressindicator.CircularProgressIndicator
android:id="@+id/progressBar"
style="?android:attr/progressBarStyleLarge"
style="@style/CircularProgress.Large"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:layout_constraintBottom_toBottomOf="parent"

View File

@@ -21,6 +21,7 @@
android:id="@+id/aliasEditLayout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="16dp"
app:errorEnabled="true"
app:hintEnabled="false">
@@ -28,7 +29,6 @@
android:id="@+id/aliasEditText"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="16dp"
android:hint="@string/set_contact_alias_hint"
android:imeOptions="flagNoPersonalizedLearning"
android:inputType="text|textCapWords"
@@ -41,7 +41,7 @@
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/margin_xxlarge"
android:layout_marginLeft="@dimen/margin_xxlarge"
android:layout_marginBottom="8dp"
android:gravity="end"
android:orientation="horizontal">

View File

@@ -19,9 +19,9 @@
android:layout_width="match_parent"
android:layout_height="wrap_content" />
<ProgressBar
<com.google.android.material.progressindicator.CircularProgressIndicator
android:id="@+id/progressBar"
style="?android:attr/progressBarStyleLarge"
style="@style/CircularProgress.Large"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center" />

View File

@@ -34,7 +34,6 @@
android:text="@string/connect_via_bluetooth_intro"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.5"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/introImageView" />

View File

@@ -17,12 +17,12 @@
app:layout_constraintVertical_chainStyle="packed"
app:srcCompat="@drawable/il_bluetooth_connect" />
<ProgressBar
<com.google.android.material.progressindicator.LinearProgressIndicator
android:id="@+id/progressBar"
style="?android:attr/progressBarStyleHorizontal"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:indeterminate="true"
app:indicatorColor="@color/briar_accent"
app:layout_constraintBottom_toTopOf="@+id/textView"
app:layout_constraintEnd_toEndOf="@+id/introImageView"
app:layout_constraintStart_toStartOf="@+id/introImageView"

View File

@@ -5,7 +5,7 @@
android:layout_width="match_parent"
android:layout_height="match_parent">
<androidx.appcompat.widget.Toolbar
<com.google.android.material.appbar.MaterialToolbar
android:id="@+id/toolbar"
style="@style/BriarToolbar"
android:layout_width="match_parent"
@@ -40,7 +40,7 @@
app:tint="?attr/colorControlNormal"
tools:ignore="ContentDescription" />
<androidx.appcompat.widget.SwitchCompat
<com.google.android.material.switchmaterial.SwitchMaterial
android:id="@+id/switchDisappearingMessages"
android:layout_width="0dp"
android:layout_height="wrap_content"
@@ -50,6 +50,7 @@
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/imageViewBomb"
tools:checked="true"
tools:enabled="true" />
<Button

View File

@@ -35,8 +35,9 @@
android:text="@string/groups_create_group_button"
tools:enabled="true" />
<ProgressBar
<com.google.android.material.progressindicator.CircularProgressIndicator
android:id="@+id/progressBar"
style="@style/CircularProgress"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"

View File

@@ -37,9 +37,9 @@
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/fallbackIntro" />
<ProgressBar
<com.google.android.material.progressindicator.CircularProgressIndicator
android:id="@+id/progressBar"
style="?android:progressBarStyle"
style="@style/CircularProgress"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:visibility="invisible"

View File

@@ -59,19 +59,17 @@
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginHorizontal="@dimen/margin_large"
android:drawablePadding="8dp"
android:text="@string/hotspot_button_start_sharing"
app:drawableLeftCompat="@drawable/ic_wifi_tethering"
app:drawableStartCompat="@drawable/ic_wifi_tethering"
app:drawableTint="@color/button_text"
app:icon="@drawable/ic_wifi_tethering"
app:iconTint="@color/button_text"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
tools:visibility="visible" />
<ProgressBar
<com.google.android.material.progressindicator.CircularProgressIndicator
android:id="@+id/progressBar"
style="?android:attr/progressBarStyle"
style="@style/CircularProgress"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:visibility="invisible"

View File

@@ -76,11 +76,9 @@
android:layout_height="wrap_content"
android:layout_marginHorizontal="16dp"
android:layout_marginTop="6dp"
android:drawablePadding="8dp"
android:text="@string/hotspot_button_connected"
app:drawableLeftCompat="@drawable/ic_check_white"
app:drawableStartCompat="@drawable/ic_check_white"
app:drawableTint="@color/button_text"
app:icon="@drawable/ic_check_white"
app:iconTint="@color/button_text"
app:layout_constraintBottom_toTopOf="@+id/stopButton"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
@@ -94,11 +92,9 @@
android:layout_height="wrap_content"
android:layout_marginHorizontal="16dp"
android:layout_marginTop="6dp"
android:drawablePadding="8dp"
android:text="@string/hotspot_button_stop_sharing"
app:drawableLeftCompat="@drawable/ic_portable_wifi_off"
app:drawableStartCompat="@drawable/ic_portable_wifi_off"
app:drawableTint="@color/briar_red_500"
app:icon="@drawable/ic_portable_wifi_off"
app:iconTint="@color/briar_red_500"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"

View File

@@ -27,9 +27,9 @@
android:visibility="invisible"
tools:visibility="visible">
<ProgressBar
<com.google.android.material.progressindicator.CircularProgressIndicator
android:id="@+id/connect_progress"
style="?android:attr/progressBarStyleLarge"
style="@style/CircularProgress.Large"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:layout_constraintBottom_toTopOf="@+id/connect_status"

View File

@@ -137,11 +137,10 @@
style="@style/BriarButtonFlat.Positive.Tiny"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:drawablePadding="8dp"
android:enabled="false"
android:text="@string/copy_button"
app:drawableLeftCompat="@drawable/ic_content_copy"
app:drawableStartCompat="@drawable/ic_content_copy"
app:icon="@drawable/ic_content_copy"
app:iconPadding="8dp"
app:layout_constraintEnd_toStartOf="@id/shareButton"
app:layout_constraintHorizontal_bias="1.0"
app:layout_constraintHorizontal_chainStyle="packed"
@@ -153,11 +152,10 @@
style="@style/BriarButtonFlat.Positive.Tiny"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:drawablePadding="8dp"
android:enabled="false"
android:text="@string/share_button"
app:drawableLeftCompat="@drawable/social_share_blue"
app:drawableStartCompat="@drawable/social_share_blue"
app:icon="@drawable/social_share_blue"
app:iconPadding="8dp"
app:layout_constraintBottom_toBottomOf="@id/copyButton"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toEndOf="@id/copyButton"
@@ -216,15 +214,14 @@
style="@style/BriarButtonFlat.Positive.Tiny"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:drawablePadding="8dp"
android:text="@string/paste_button"
app:drawableLeftCompat="@drawable/ic_content_paste"
app:drawableStartCompat="@drawable/ic_content_paste"
app:icon="@drawable/ic_content_paste"
app:iconPadding="8dp"
app:layout_constraintBottom_toTopOf="@+id/infoView"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="1.0"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/linkInputLayout"
app:layout_constraintBottom_toTopOf="@+id/infoView"
app:layout_constraintVertical_bias="0.0" />
<org.briarproject.briar.android.view.InfoView

View File

@@ -20,18 +20,19 @@
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_chainStyle="packed" />
<ProgressBar
<com.google.android.material.progressindicator.LinearProgressIndicator
android:id="@+id/progressBar"
style="?android:attr/progressBarStyleHorizontal"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginHorizontal="@dimen/margin_xlarge"
android:layout_marginTop="@dimen/margin_xlarge"
android:max="100"
app:indicatorColor="@color/briar_accent"
app:layout_constraintBottom_toTopOf="@+id/info"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/title" />
app:layout_constraintTop_toBottomOf="@+id/title"
tools:progress="50" />
<TextView
android:id="@+id/info"

View File

@@ -52,11 +52,9 @@
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginHorizontal="@dimen/margin_large"
android:drawablePadding="8dp"
android:text="@string/mailbox_setup_button_scan"
app:drawableLeftCompat="@drawable/ic_qr_code"
app:drawableStartCompat="@drawable/ic_qr_code"
app:drawableTint="@color/button_text"
app:icon="@drawable/ic_qr_code"
app:iconTint="@color/button_text"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"

View File

@@ -95,7 +95,6 @@
android:layout_marginTop="6dp"
android:text="@string/mailbox_error_wizard_button"
android:visibility="gone"
app:drawableTint="@color/briar_button_text_positive"
app:layout_constraintBottom_toTopOf="@+id/unlinkButton"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
@@ -114,8 +113,9 @@
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent" />
<ProgressBar
<com.google.android.material.progressindicator.CircularProgressIndicator
android:id="@+id/unlinkProgress"
style="@style/CircularProgress"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:visibility="invisible"

View File

@@ -7,7 +7,7 @@
android:background="@color/briar_primary"
android:orientation="vertical">
<androidx.appcompat.widget.Toolbar
<com.google.android.material.appbar.MaterialToolbar
android:id="@+id/toolbar"
style="@style/BriarToolbar"
android:layout_width="match_parent"

View File

@@ -20,15 +20,17 @@
app:tint="@color/briar_accent"
tools:ignore="ContentDescription" />
<ProgressBar
<com.google.android.material.progressindicator.CircularProgressIndicator
android:id="@+id/progressBar"
style="?android:attr/progressBarStyleLarge"
style="@style/CircularProgress.Large"
android:layout_width="0dp"
android:layout_height="0dp"
app:indicatorColor="@color/briar_accent"
app:layout_constraintBottom_toBottomOf="@+id/imageView"
app:layout_constraintEnd_toEndOf="@+id/imageView"
app:layout_constraintStart_toStartOf="@+id/imageView"
app:layout_constraintTop_toTopOf="@+id/imageView" />
app:layout_constraintTop_toTopOf="@+id/imageView"
tools:progress="50" />
<TextView
android:id="@+id/textView"

View File

@@ -64,22 +64,21 @@
</com.google.android.material.textfield.TextInputLayout>
<TextView
<Button
android:id="@+id/btn_forgotten"
style="@style/BriarButtonFlat.Neutral"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="8dp"
android:clickable="true"
android:focusable="true"
android:layout_marginBottom="8dp"
android:text="@string/forgotten_password"
android:textColor="?android:attr/textColorLink"
app:layout_constraintBottom_toTopOf="@+id/btn_sign_in"
app:layout_constraintHorizontal_bias="0.5"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toBottomOf="@+id/password_layout" />
<Button
<com.google.android.material.button.MaterialButton
android:id="@+id/btn_sign_in"
style="@style/BriarButton"
android:layout_width="match_parent"
@@ -89,8 +88,9 @@
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent" />
<ProgressBar
<com.google.android.material.progressindicator.CircularProgressIndicator
android:id="@+id/progress_wheel"
style="@style/CircularProgress"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:visibility="invisible"

View File

@@ -11,9 +11,9 @@
android:layout_height="wrap_content"
android:layout_margin="@dimen/margin_xlarge">
<ProgressBar
<com.google.android.material.progressindicator.CircularProgressIndicator
android:id="@+id/progress"
style="?android:attr/progressBarStyleLarge"
style="@style/CircularProgress.Large"
android:layout_width="@dimen/hero_square"
android:layout_height="@dimen/hero_square"
android:indeterminate="true"

View File

@@ -22,9 +22,9 @@
android:layout_height="wrap_content"
android:layout_margin="@dimen/margin_small" />
<ProgressBar
<com.google.android.material.progressindicator.CircularProgressIndicator
android:id="@+id/progressBar"
style="?android:attr/progressBarStyleLarge"
style="@style/CircularProgress.Large"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true" />

View File

@@ -40,6 +40,7 @@
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/margin_large"
android:layout_marginLeft="@dimen/margin_large"
android:layout_marginTop="8dp"
android:layout_marginEnd="@dimen/margin_large"
android:layout_marginRight="@dimen/margin_large"
app:hintEnabled="false"
@@ -109,9 +110,9 @@
tools:listitem="@layout/list_item_crash"
tools:visibility="visible" />
<ProgressBar
<com.google.android.material.progressindicator.CircularProgressIndicator
android:id="@+id/progress_wheel"
style="?android:attr/progressBarStyleLarge"
style="@style/CircularProgress.Large"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:visibility="invisible"

View File

@@ -42,9 +42,9 @@
android:text="@string/blogs_rss_feeds_import_button"
tools:enabled="true" />
<ProgressBar
<com.google.android.material.progressindicator.CircularProgressIndicator
android:id="@+id/progressBar"
style="?android:attr/progressBarStyle"
style="@style/CircularProgress"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"

View File

@@ -68,15 +68,14 @@
</com.google.android.material.textfield.TextInputLayout>
<androidx.appcompat.widget.AppCompatButton
<Button
android:id="@+id/info_button"
style="@style/BriarButtonFlat.Positive"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:drawableStart="@drawable/ic_info_white"
android:drawablePadding="8dp"
android:text="@string/more_info"
app:drawableTint="@color/briar_button_text_positive"
app:icon="@drawable/ic_info_white"
app:iconPadding="8dp"
app:layout_constraintBottom_toTopOf="@+id/next"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toBottomOf="@+id/nickname_entry_wrapper" />

View File

@@ -87,9 +87,9 @@
app:layout_constraintStart_toStartOf="parent"
tools:enabled="true" />
<ProgressBar
<com.google.android.material.progressindicator.CircularProgressIndicator
android:id="@+id/progress"
style="?android:attr/progressBarStyle"
style="@style/CircularProgress"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:visibility="invisible"

View File

@@ -106,15 +106,14 @@
android:maxLines="1" />
</com.google.android.material.textfield.TextInputLayout>
<androidx.appcompat.widget.AppCompatButton
<Button
android:id="@+id/info_button"
style="@style/BriarButtonFlat.Positive"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:drawableStart="@drawable/ic_info_white"
android:drawablePadding="8dp"
android:text="@string/more_info"
app:drawableTint="@color/briar_button_text_positive"
app:icon="@drawable/ic_info_white"
app:iconPadding="8dp"
app:layout_constraintBottom_toTopOf="@+id/next"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toBottomOf="@+id/password_confirm_wrapper" />
@@ -131,9 +130,9 @@
app:layout_constraintRight_toRightOf="parent"
tools:enabled="true" />
<ProgressBar
<com.google.android.material.progressindicator.CircularProgressIndicator
android:id="@+id/progress"
style="?android:attr/progressBarStyle"
style="@style/CircularProgress"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:visibility="invisible"

View File

@@ -20,11 +20,12 @@
app:tint="@color/briar_accent"
tools:ignore="ContentDescription" />
<ProgressBar
<com.google.android.material.progressindicator.CircularProgressIndicator
android:id="@+id/progressBar"
style="?android:attr/progressBarStyleLarge"
style="@style/CircularProgress.Large"
android:layout_width="0dp"
android:layout_height="0dp"
app:indicatorColor="@color/briar_accent"
app:layout_constraintBottom_toBottomOf="@+id/imageView"
app:layout_constraintEnd_toEndOf="@+id/imageView"
app:layout_constraintStart_toStartOf="@+id/imageView"

View File

@@ -30,15 +30,15 @@
app:srcCompat="@drawable/il_transfer_data_receive"
tools:ignore="ContentDescription" />
<ProgressBar
<com.google.android.material.progressindicator.LinearProgressIndicator
android:id="@+id/progressBar"
style="?android:attr/progressBarStyleHorizontal"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginHorizontal="@dimen/margin_xlarge"
android:layout_marginTop="@dimen/margin_xlarge"
android:indeterminate="true"
android:visibility="gone"
app:indicatorColor="@color/briar_accent"
app:layout_constraintBottom_toTopOf="@+id/introTextView"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"

View File

@@ -30,18 +30,19 @@
app:srcCompat="@drawable/il_transfer_data_send"
tools:ignore="ContentDescription" />
<ProgressBar
<com.google.android.material.progressindicator.LinearProgressIndicator
android:id="@+id/progressBar"
style="?android:attr/progressBarStyleHorizontal"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginHorizontal="@dimen/margin_xlarge"
android:layout_marginTop="@dimen/margin_xlarge"
android:visibility="gone"
app:indicatorColor="@color/briar_accent"
app:layout_constraintBottom_toTopOf="@+id/introTextView"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/imageView"
tools:progress="50"
tools:visibility="visible" />
<TextView

View File

@@ -14,7 +14,6 @@
android:contentDescription="@string/info"
android:drawablePadding="@dimen/margin_medium"
android:gravity="center_vertical"
app:drawableLeftCompat="@drawable/ic_info_dark"
app:drawableStartCompat="@drawable/ic_info_dark"
app:drawableTint="?attr/colorControlNormal"
tools:text="Did you know that if you took all the veins out of your body and laid them out end to end, you would die?" />

View File

@@ -86,9 +86,9 @@
app:barrierDirection="bottom"
app:constraint_referenced_ids="nameContact1,nameContact2" />
<ProgressBar
<com.google.android.material.progressindicator.CircularProgressIndicator
android:id="@+id/progressBar"
style="?android:attr/progressBarStyleLarge"
style="@style/CircularProgress.Large"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="@dimen/margin_large"

View File

@@ -6,9 +6,9 @@
android:layout_height="match_parent"
tools:layout_height="200dp">
<ProgressBar
<com.google.android.material.progressindicator.CircularProgressIndicator
android:id="@+id/progressBar"
style="?android:attr/progressBarStyleLarge"
style="@style/CircularProgress.Large"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="16dp"

View File

@@ -6,9 +6,9 @@
android:layout_height="match_parent"
tools:layout_height="200dp">
<ProgressBar
<com.google.android.material.progressindicator.CircularProgressIndicator
android:id="@+id/progressBar"
style="?android:attr/progressBarStyleLarge"
style="@style/CircularProgress.Large"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="16dp"

View File

@@ -38,7 +38,7 @@
</LinearLayout>
<androidx.appcompat.widget.SwitchCompat
<com.google.android.material.switchmaterial.SwitchMaterial
android:id="@+id/switchCompat"
android:layout_width="match_parent"
android:layout_height="wrap_content"

View File

@@ -3,6 +3,7 @@
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:background="?colorSecondary"
android:layout_height="wrap_content"
tools:layout_width="800dp"
tools:layout_height="75dp">

View File

@@ -4,8 +4,8 @@
xmlns:tools="http://schemas.android.com/tools"
tools:showIn="@layout/fragment_keyagreement_qr">
<ProgressBar
style="?android:attr/progressBarStyleLarge"
<com.google.android.material.progressindicator.CircularProgressIndicator
style="@style/CircularProgress.Large"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center" />

View File

@@ -33,10 +33,7 @@
<Button
android:id="@+id/compositeSendButton"
style="@style/BriarButton"
android:layout_marginStart="@dimen/margin_small"
android:layout_marginLeft="@dimen/margin_small"
android:layout_marginEnd="@dimen/margin_small"
android:layout_marginRight="@dimen/margin_small"
android:layout_margin="@dimen/margin_medium"
tools:text="@string/send" />
</merge>

View File

@@ -5,10 +5,12 @@
android:layout_height="wrap_content"
tools:context="org.briarproject.briar.android.navdrawer.NavDrawerActivity">
<androidx.appcompat.widget.Toolbar
<com.google.android.material.appbar.MaterialToolbar
android:id="@+id/toolbar"
style="@style/BriarToolbar"
tools:subtitle="Subtitle"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
android:layout_height="wrap_content"
tools:title="MaterialToolbar title" />
</com.google.android.material.appbar.AppBarLayout>

View File

@@ -35,7 +35,7 @@
android:padding="4dp"
android:scaleType="center"
app:srcCompat="@drawable/social_send_now_white"
app:tint="@color/briar_accent" />
app:tint="?colorPrimary" />
<ImageView
android:id="@+id/bombBadge"
@@ -51,6 +51,7 @@
<ProgressBar
android:id="@+id/progressBar"
style="@style/CircularProgress"
android:layout_width="@dimen/text_input_height"
android:layout_height="@dimen/text_input_height"
android:visibility="invisible" />

View File

@@ -32,4 +32,46 @@
<color name="il_lime">@color/briar_lime_400_new</color>
<color name="il_orange">@color/briar_orange_400</color>
<color name="il_red">@color/briar_red_500_new</color>
<color name="md_theme_secondaryContainer">#3E506B</color>
<color name="md_theme_onSecondaryContainer">#E7EFFF</color>
<color name="md_theme_tertiary">#E4FFE2</color>
<color name="md_theme_onTertiary">#003915</color>
<color name="md_theme_tertiaryContainer">#3BEA75</color>
<color name="md_theme_onTertiaryContainer">#00451B</color>
<color name="md_theme_error">#FFB4AB</color>
<color name="md_theme_onError">#690005</color>
<color name="md_theme_errorContainer">#D01B1F</color>
<color name="md_theme_onErrorContainer">#FFFFFF</color>
<color name="md_theme_background">#11150A</color>
<color name="md_theme_onBackground">#E0E4D2</color>
<color name="md_theme_surface">#11150A</color>
<color name="md_theme_onSurface">#E0E4D2</color>
<color name="md_theme_surfaceVariant">#424936</color>
<color name="md_theme_onSurfaceVariant">#C2CAB0</color>
<color name="md_theme_outline">#8C947C</color>
<color name="md_theme_outlineVariant">#424936</color>
<color name="md_theme_scrim">#000000</color>
<color name="md_theme_inverseSurface">#E0E4D2</color>
<color name="md_theme_inverseOnSurface">#2E3226</color>
<color name="md_theme_inversePrimary">#446900</color>
<color name="md_theme_primaryFixed">#B2F746</color>
<color name="md_theme_onPrimaryFixed">#121F00</color>
<color name="md_theme_primaryFixedDim">#98DA27</color>
<color name="md_theme_onPrimaryFixedVariant">#334F00</color>
<color name="md_theme_secondaryFixed">#D4E3FF</color>
<color name="md_theme_onSecondaryFixed">#071C34</color>
<color name="md_theme_secondaryFixedDim">#B5C8E7</color>
<color name="md_theme_onSecondaryFixedVariant">#364862</color>
<color name="md_theme_tertiaryFixed">#66FF8E</color>
<color name="md_theme_onTertiaryFixed">#002109</color>
<color name="md_theme_tertiaryFixedDim">#30E36F</color>
<color name="md_theme_onTertiaryFixedVariant">#005321</color>
<color name="md_theme_surfaceDim">#11150A</color>
<color name="md_theme_surfaceBright">#363B2E</color>
<color name="md_theme_surfaceContainerLowest">#0B1006</color>
<color name="md_theme_surfaceContainerLow">#191D12</color>
<color name="md_theme_surfaceContainer">#1D2116</color>
<color name="md_theme_surfaceContainerHigh">#272C1F</color>
<color name="md_theme_surfaceContainerHighest">#32362A</color>
</resources>

View File

@@ -88,4 +88,55 @@
<color name="thread_item_highlight">@android:color/white</color>
<color name="divider">@color/briar_gray_200</color>
<color name="md_theme_primary">@color/briar_lime_600_new</color>
<color name="md_theme_onPrimary">#FFFFFF</color>
<color name="md_theme_primaryContainer">@color/briar_night_700</color>
<color name="md_theme_onPrimaryContainer">@android:color/white</color>
<color name="md_theme_secondary">@color/briar_night_700</color>
<color name="md_theme_onSecondary">@android:color/white</color>
<color name="md_theme_secondaryContainer">#576985</color>
<color name="md_theme_onSecondaryContainer">#FFFFFF</color>
<color name="md_theme_tertiary">#006E2F</color>
<color name="md_theme_onTertiary">#FFFFFF</color>
<color name="md_theme_tertiaryContainer">#4CF780</color>
<color name="md_theme_onTertiaryContainer">#004E1F</color>
<color name="md_theme_error">#A0000E</color>
<color name="md_theme_onError">#FFFFFF</color>
<color name="md_theme_errorContainer">#DC2626</color>
<color name="md_theme_onErrorContainer">#FFFFFF</color>
<color name="md_theme_background">#F7FBE8</color>
<color name="md_theme_onBackground">#191D12</color>
<color name="md_theme_surface">#F7FBE8</color>
<color name="md_theme_onSurface">#191D12</color>
<color name="md_theme_surfaceVariant">#DEE6CB</color>
<color name="md_theme_onSurfaceVariant">#424936</color>
<color name="md_theme_outline">#727A64</color>
<color name="md_theme_outlineVariant">#C2CAB0</color>
<color name="md_theme_scrim">#000000</color>
<color name="md_theme_inverseSurface">#2E3226</color>
<color name="md_theme_inverseOnSurface">#EFF3E0</color>
<color name="md_theme_inversePrimary">#98DA27</color>
<color name="md_theme_primaryFixed">#B2F746</color>
<color name="md_theme_onPrimaryFixed">#121F00</color>
<color name="md_theme_primaryFixedDim">#98DA27</color>
<color name="md_theme_onPrimaryFixedVariant">#334F00</color>
<color name="md_theme_secondaryFixed">#D4E3FF</color>
<color name="md_theme_onSecondaryFixed">#071C34</color>
<color name="md_theme_secondaryFixedDim">#B5C8E7</color>
<color name="md_theme_onSecondaryFixedVariant">#364862</color>
<color name="md_theme_tertiaryFixed">#66FF8E</color>
<color name="md_theme_onTertiaryFixed">#002109</color>
<color name="md_theme_tertiaryFixedDim">#30E36F</color>
<color name="md_theme_onTertiaryFixedVariant">#005321</color>
<color name="md_theme_surfaceDim">#D8DCCA</color>
<color name="md_theme_surfaceBright">#F7FBE8</color>
<color name="md_theme_surfaceContainerLowest">#FFFFFF</color>
<color name="md_theme_surfaceContainerLow">#F2F6E3</color>
<color name="md_theme_surfaceContainer">#ECF0DD</color>
<color name="md_theme_surfaceContainerHigh">#E6EAD8</color>
<color name="md_theme_surfaceContainerHighest">#E0E4D2</color>
</resources>

View File

@@ -1,15 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<resources
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools">
<resources xmlns:android="http://schemas.android.com/apk/res/android">
<style name="BriarToolbar" parent="Widget.AppCompat.Toolbar">
<item name="android:background">?colorPrimary</item>
<item name="android:textColorPrimary">@color/briar_text_primary_inverse</item>
<item name="android:textSize">@dimen/text_size_medium</item>
<item name="colorPrimary">@color/briar_primary</item>
<item name="titleTextAppearance">@style/BriarToolbarTitleTextAppearance</item>
<item name="subtitleTextAppearance">@style/BriarToolbarSubTitleTextAppearance</item>
<style name="BriarToolbar" parent="Widget.Material3.Toolbar">
<item name="android:background">@color/briar_primary</item>
<item name="titleTextColor">@color/briar_text_primary_inverse</item>
<item name="subtitleTextColor">@color/briar_text_secondary_inverse</item>
<item name="android:theme">@style/BriarToolbarTheme</item>
<item name="popupTheme">@style/PopupMenu</item>
</style>
@@ -18,46 +13,35 @@
<item name="colorControlNormal">@color/briar_text_primary_inverse</item>
</style>
<style name="BriarToolbarTitleTextAppearance" parent="TextAppearance.Widget.AppCompat.Toolbar.Title">
<item name="android:textColor">@color/briar_text_primary_inverse</item>
</style>
<style name="BriarToolbarSubTitleTextAppearance" parent="TextAppearance.Widget.AppCompat.Toolbar.Subtitle">
<item name="android:textColor">@color/briar_text_secondary_inverse</item>
</style>
<style name="PopupMenu" parent="Theme.AppCompat.DayNight.DarkActionBar">
<style name="PopupMenu" parent="Theme.Material3.DayNight">
<item name="android:colorBackground">@color/window_background</item>
</style>
<style name="ButtonTheme" parent="Theme.AppCompat.DayNight">
<!-- A strange hack needed only to override button color on all API levels -->
<item name="colorAccent">@color/briar_button_background_color</item>
</style>
<style name="BriarButton" parent="Widget.AppCompat.Button.Colored">
<item name="android:theme">@style/ButtonTheme</item>
<style name="BriarButton" parent="Widget.Material3.Button">
<item name="android:layout_width">match_parent</item>
<item name="android:layout_height">wrap_content</item>
<item name="android:textSize">@dimen/text_size_medium</item>
<item name="android:padding">@dimen/margin_large</item>
<item name="android:textColor">@color/button_text</item>
<item name="android:minHeight">@dimen/button_size</item>
</style>
<style name="BriarButtonFlat" parent="Widget.AppCompat.Button.Borderless">
<style name="BriarButtonFlat" parent="Widget.Material3.Button.TextButton">
<item name="android:textSize">@dimen/text_size_medium</item>
</style>
<style name="BriarButtonFlat.Negative" parent="BriarButtonFlat">
<item name="android:textColor">@color/briar_button_text_negative</item>
<item name="iconTint">@color/briar_button_text_negative</item>
</style>
<style name="BriarButtonFlat.Positive" parent="BriarButtonFlat">
<item name="android:textColor">@color/briar_button_text_positive</item>
<item name="iconTint">@color/briar_button_text_positive</item>
</style>
<style name="BriarButtonFlat.Neutral" parent="BriarButtonFlat">
<item name="android:textColor">@color/briar_button_text_neutral</item>
<item name="iconTint">@color/briar_button_text_neutral</item>
</style>
<style name="BriarButtonFlat.Positive.Tiny" parent="BriarButtonFlat.Positive">
@@ -66,7 +50,7 @@
<item name="android:minWidth">@dimen/button_size</item>
</style>
<style name="BriarButtonOutline" parent="Widget.AppCompat.Button.Borderless">
<style name="BriarButtonOutline" parent="Widget.Material3.Button.OutlinedButton">
<item name="android:layout_width">match_parent</item>
<item name="android:layout_height">wrap_content</item>
<item name="android:textSize">@dimen/text_size_medium</item>
@@ -106,6 +90,17 @@
<item name="android:background">@color/thread_indicator</item>
</style>
<style name="CircularProgress" parent="Widget.Material3.CircularProgressIndicator">
<item name="android:indeterminate">true</item>
<item name="indicatorColor">@color/briar_accent</item>
</style>
<style name="CircularProgress.Large" parent="Widget.Material3.CircularProgressIndicator">
<item name="android:indeterminate">true</item>
<item name="indicatorColor">@color/briar_accent</item>
<item name="indicatorSize">76dp</item>
</style>
<style name="BriarAvatar">
<item name="civ_border_width">@dimen/avatar_border_width</item>
<item name="civ_border_color">?android:attr/textColorSecondary</item>
@@ -135,7 +130,7 @@
<item name="android:layout_height">match_parent</item>
<item name="android:layout_width">@dimen/forum_nested_line_width</item>
<item name="android:layout_marginLeft">5dp</item>
<item name="android:layout_marginStart" tools:targetApi="jelly_bean_mr1">5dp</item>
<item name="android:layout_marginStart">5dp</item>
<item name="android:background">@color/thread_indicator</item>
<item name="android:visibility">gone</item>
</style>
@@ -149,6 +144,7 @@
<style name="StepBubble">
<item name="android:layout_width">28dp</item>
<item name="android:layout_height">28dp</item>
<!-- FIXME in dark theme accent is same color as StepBubble.Completed -->
<item name="android:background">@drawable/bubble_accent</item>
<item name="android:gravity">center</item>
<item name="android:textColor">@android:color/white</item>

View File

@@ -1,14 +1,24 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="BriarTheme" parent="Theme.AppCompat.DayNight.DarkActionBar">
<item name="colorPrimary">@color/briar_primary</item>
<item name="colorPrimaryDark">@color/briar_primary_dark</item>
<item name="colorAccent">@color/briar_accent</item>
<item name="android:textColorLink">@color/briar_text_link</item>
<style name="BriarTheme" parent="Theme.Material3.DayNight">
<item name="colorPrimary">@color/md_theme_primary</item>
<item name="colorOnPrimary">@color/md_theme_onPrimary</item>
<item name="colorPrimaryContainer">@color/md_theme_primary</item>
<item name="colorOnPrimaryContainer">@color/md_theme_onPrimary</item>
<item name="colorSecondary">@color/md_theme_secondary</item>
<item name="colorOnSecondary">@color/md_theme_onSecondary</item>
<item name="android:colorBackground">@color/window_background</item>
<item name="colorOnBackground">@color/md_theme_onBackground</item>
<item name="colorSurface">@color/card_background</item>
<item name="colorOnSurface">@color/md_theme_onSurface</item>
<item name="android:statusBarColor">#000000</item>
<item name="android:windowBackground">@color/window_background</item>
<item name="android:textColorLink">@color/briar_text_link</item>
<item name="android:windowAnimationStyle">@style/ActivityAnimation</item>
<item name="windowActionModeOverlay">true</item>
<item name="toolbarStyle">@style/BriarToolbar</item>
<item name="alertDialogTheme">@style/BriarDialogTheme.Neutral</item>
<item name="preferenceTheme">@style/PreferenceThemeOverlay.v14.Material</item>
</style>
@@ -30,10 +40,8 @@
<item name="android:activityCloseExitAnimation">@anim/screen_new_out</item>
</style>
<style name="BriarDialogTheme" parent="Theme.AppCompat.DayNight.Dialog.MinWidth">
<style name="BriarDialogTheme" parent="Theme.Material3.DayNight.Dialog.MinWidth">
<item name="colorPrimary">@color/briar_primary</item>
<item name="colorPrimaryDark">@color/briar_primary_dark</item>
<item name="colorAccent">@color/briar_accent</item>
<item name="buttonBarPositiveButtonStyle">@style/BriarButtonFlat.Positive</item>
<item name="buttonBarNeutralButtonStyle">@style/BriarButtonFlat.Neutral</item>
<item name="buttonBarNegativeButtonStyle">@style/BriarButtonFlat.Negative</item>
@@ -71,13 +79,11 @@
</style>
<style name="OnboardingDialogTheme" parent="BriarDialogTheme">
<item name="android:background">@color/briar_primary</item>
<item name="android:textColorPrimary">@color/briar_text_primary_inverse</item>
<item name="android:textColorSecondary">@color/briar_text_secondary_inverse</item>
<item name="buttonBarNeutralButtonStyle">@style/Widget.AppCompat.Button.Borderless</item>
<item name="android:background">@color/md_theme_primaryContainer</item>
<item name="android:textColorPrimary">@color/md_theme_onPrimaryContainer</item>
</style>
<style name="TranslucentTheme" parent="Theme.AppCompat.NoActionBar">
<style name="TranslucentTheme" parent="Theme.Material3.DayNight.NoActionBar">
<item name="android:colorBackgroundCacheHint">@null</item>
<item name="android:windowAnimationStyle">@android:style/Animation</item>
<item name="android:windowBackground">@android:color/transparent</item>

View File

@@ -19,6 +19,7 @@ import static androidx.test.espresso.Espresso.onView;
import static androidx.test.espresso.action.ViewActions.clearText;
import static androidx.test.espresso.action.ViewActions.click;
import static androidx.test.espresso.action.ViewActions.replaceText;
import static androidx.test.espresso.action.ViewActions.scrollTo;
import static androidx.test.espresso.action.ViewActions.typeText;
import static androidx.test.espresso.assertion.ViewAssertions.doesNotExist;
import static androidx.test.espresso.assertion.ViewAssertions.matches;
@@ -75,6 +76,7 @@ public class SetupActivityTest {
onView(withId(R.id.next)).check(matches(isEnabled()));
// clicking the button shows progress bar, no doze because SDK_INT==21
onView(withId(R.id.next)).perform(scrollTo());
onView(withId(R.id.next)).perform(click());
onView(withId(R.id.progress)).check(matches(isDisplayed()));
}

View File

@@ -1,19 +1,17 @@
dependencyVerification {
verify = [
'androidx.activity:activity-ktx:1.2.2:activity-ktx-1.2.2.aar:9829e13d6a6b045b03b21a330512e091dc76eb5b3ded0d88d1ab0509cf84a50e',
'androidx.activity:activity-ktx:1.2.3:activity-ktx-1.2.3.aar:423c0226e237e08de245cf66f8ccaf103854bc19a584d971a4a075fd15d70df1',
'androidx.activity:activity:1.5.1:activity-1.5.1.aar:4b04b42d2c1f81c02faf0f7b6e9cc9fede10fdee8f66136cd4b99f88e8f48c0f',
'androidx.activity:activity-ktx:1.7.2:activity-ktx-1.7.2.aar:b0b4206ece92919925061fdf5784dd21f0118534609e8f6d9404bdd0f5cb5a3d',
'androidx.activity:activity:1.7.2:activity-1.7.2.aar:2a1abf8e0a598d246b1edcb71e2395e39f32332195ebe5ea40a3dd21355ba3ae',
'androidx.annotation:annotation-experimental:1.1.0:annotation-experimental-1.1.0.aar:0157de61a2064047896a058080f3fd67ba57ad9a94857b3f7a363660243e3f90',
'androidx.annotation:annotation:1.5.0:annotation-1.5.0.jar:261fb7c0210858500bab66d34354972a75166ab4182add283780b05513d6ec4a',
'androidx.appcompat:appcompat-resources:1.5.0:appcompat-resources-1.5.0.aar:34511f11765eb4dfb61e7b3285019b6488b10f6a9093b028aa108ca0d33fc8c5',
'androidx.appcompat:appcompat:1.5.0:appcompat-1.5.0.aar:ee3c914528409787069d9ee903243dac0204a09f9119c4f0aa1a2aa92188acac',
'androidx.arch.core:core-common:2.1.0:core-common-2.1.0.jar:fe1237bf029d063e7f29fe39aeaf73ef74c8b0a3658486fc29d3c54326653889',
'androidx.arch.core:core-runtime:2.1.0:core-runtime-2.1.0.aar:dd77615bd3dd275afb11b62df25bae46b10b4a117cd37943af45bdcbf8755852',
'androidx.arch.core:core-common:2.2.0:core-common-2.2.0.jar:65308a06b1c00ee186cb9e19321383f043b993813f1522c47f4a3e3303bdba41',
'androidx.arch.core:core-runtime:2.2.0:core-runtime-2.2.0.aar:a1be5e0caa2b07623862af6ae21b3ab0718123245184d0e30dea81b53f990a47',
'androidx.arch.core:core-testing:2.1.0:core-testing-2.1.0.aar:c57ffade2a9a844bd62b4f4c3916fad5e09e9f24cceba27e932c25bb7a6d1d8f',
'androidx.cardview:cardview:1.0.0:cardview-1.0.0.aar:1193c04c22a3d6b5946dae9f4e8c59d6adde6a71b6bd5d87fb99d82dda1afec7',
'androidx.collection:collection-ktx:1.1.0:collection-ktx-1.1.0.jar:2bfc54475c047131913361f56d0f7f019c6e5bee53eeb0eb7d94a7c499a05227',
'androidx.collection:collection:1.1.0:collection-1.1.0.jar:632a0e5407461de774409352940e292a291037724207a787820c77daf7d33b72',
'androidx.concurrent:concurrent-futures:1.0.0:concurrent-futures-1.0.0.jar:5595a40e278a7b39fa78a09490e3d7f3faa95c7b01447148bd38b5ade0605c35',
'androidx.concurrent:concurrent-futures:1.1.0:concurrent-futures-1.1.0.jar:0ce067c514a0d1049d1bebdf709e344ed3266fe9744275682937cdcb13334e9e',
'androidx.constraintlayout:constraintlayout-core:1.0.4:constraintlayout-core-1.0.4.jar:3e477f4de231e58b25f5a992f3be45e97d332c34a39a9e3e7d4b78ae0ac2256f',
'androidx.constraintlayout:constraintlayout:2.1.4:constraintlayout-2.1.4.aar:0df714c0b51e54710ebf746eb469d333176bbb3cb29f80775dc3ca4eb3162512',
@@ -27,34 +25,35 @@ dependencyVerification {
'androidx.dynamicanimation:dynamicanimation:1.0.0:dynamicanimation-1.0.0.aar:ce005162c229bf308d2d5b12fb6cad0874069cbbeaccee63a8193bd08d40de04',
'androidx.emoji2:emoji2-views-helper:1.2.0:emoji2-views-helper-1.2.0.aar:7ffa4d464d9db259fca0cdb50fbd4ab63d6872bcda59468b9f7555504c7d5ac4',
'androidx.emoji2:emoji2:1.2.0:emoji2-1.2.0.aar:f31a06c150ecb03073f55a6f7b0b74a240a6a8d727c14ce76726d020570dfa8c',
'androidx.exifinterface:exifinterface:1.3.6:exifinterface-1.3.6.aar:1804105e9e05fdd8f760413bad5de498c381aa329f4f9d94c851bc891ac654c6',
'androidx.fragment:fragment-ktx:1.3.6:fragment-ktx-1.3.6.aar:3f84a013fdeb8bac92d4ab607aebf39a4ff945f4585a635960ed769cd0255df1',
'androidx.fragment:fragment-ktx:1.4.0:fragment-ktx-1.4.0.aar:439873b250461eb2245e393fe6683dceb567e7a18d9d6cf4538de9befa4ed1b0',
'androidx.fragment:fragment-testing:1.4.0:fragment-testing-1.4.0.aar:1f874b83919c69f2e0df6de0ba2ad87a0d61cc7840d90b481ee0d4db85c2385b',
'androidx.fragment:fragment:1.5.5:fragment-1.5.5.aar:e0a3174fed034556addf6d5beab068cf6b1e2da9db55ea512ba45cdb755c82a3',
'androidx.exifinterface:exifinterface:1.3.7:exifinterface-1.3.7.aar:0e8f1832266c5b0667ad3d3b1098e624e49a09075493a014a7e88af01fd30ad3',
'androidx.fragment:fragment-ktx:1.6.2:fragment-ktx-1.6.2.aar:460c9036b64da7ce7a066a0cb184e01451cfc44929aa1b62fe0689597f2343f8',
'androidx.fragment:fragment-testing-manifest:1.6.2:fragment-testing-manifest-1.6.2.aar:a9c3bf8cad2abc920b1e00011a9d93a7aa3753a8ffae8d06c7dcf5dfac56090d',
'androidx.fragment:fragment-testing:1.6.2:fragment-testing-1.6.2.aar:4b2269953b6d61d622b51c1d661a63f0709e7db97abeafe621acbd1ecc8c7228',
'androidx.fragment:fragment:1.6.2:fragment-1.6.2.aar:df7ba73f377dbd7ccd28b112afd08d28b60ec2c6bc91ec658609c845442ace08',
'androidx.interpolator:interpolator:1.0.0:interpolator-1.0.0.aar:33193135a64fe21fa2c35eec6688f1a76e512606c0fc83dc1b689e37add7732a',
'androidx.legacy:legacy-support-core-utils:1.0.0:legacy-support-core-utils-1.0.0.aar:a7edcf01d5b52b3034073027bc4775b78a4764bb6202bb91d61c829add8dd1c7',
'androidx.lifecycle:lifecycle-common:2.5.1:lifecycle-common-2.5.1.jar:20ad1520f625cf455e6afd7290988306d3a9886efa993e0860fbabf4bb3f7bda',
'androidx.lifecycle:lifecycle-common:2.6.2:lifecycle-common-2.6.2.jar:f34831b6c71cd844e1d35d1be49d5e79447c5ab856346531b1e8676fda7374b1',
'androidx.lifecycle:lifecycle-extensions:2.2.0:lifecycle-extensions-2.2.0.aar:648c8de1d10b025d524a2e46ac994fc3f6bf186826c09ec1a62d250bf1b877ae',
'androidx.lifecycle:lifecycle-livedata-core-ktx:2.3.1:lifecycle-livedata-core-ktx-2.3.1.aar:6dd41c3c33daeb503fd87fbfff7043adb0be6c541a9c9e09bf531ca49520fddb',
'androidx.lifecycle:lifecycle-livedata-core:2.5.1:lifecycle-livedata-core-2.5.1.aar:ee792103ca248bfaf150c45a93871e4cf7e8cebab990e0f62f7de5d4ff2f209f',
'androidx.lifecycle:lifecycle-livedata:2.5.1:lifecycle-livedata-2.5.1.aar:8ad18cf18a8f82d77b11aab49cf9b9b3d418e5f564b216e91d815cf038cefdfb',
'androidx.lifecycle:lifecycle-process:2.4.1:lifecycle-process-2.4.1.aar:db649b3efa24e31052145310b002db91da346b3f89c093ec38c3046db45e794e',
'androidx.lifecycle:lifecycle-runtime-ktx:2.3.1:lifecycle-runtime-ktx-2.3.1.aar:7ad2987dd7f4075c0871a72cf07e9649d9cd790fc23dfab1972eca4710373873',
'androidx.lifecycle:lifecycle-runtime:2.5.1:lifecycle-runtime-2.5.1.aar:33b0d73dc2f028fceb3599bacabe563c3db6d26f3513d889595863536a4ac8c0',
'androidx.lifecycle:lifecycle-service:2.2.0:lifecycle-service-2.2.0.aar:ca2801ffc069555afed8eddd2292130f436956452bc8bbad30fb56f8e4e382a0',
'androidx.lifecycle:lifecycle-viewmodel-ktx:2.5.1:lifecycle-viewmodel-ktx-2.5.1.aar:30eecb351d81f0c429e186e65a892a42ce1d5bc5c80420bfece4ae279333023d',
'androidx.lifecycle:lifecycle-viewmodel-savedstate:2.5.1:lifecycle-viewmodel-savedstate-2.5.1.aar:8481141f97f0e6213dd33fcc89a784c4bd11a6ff7d4779a1cf6a0e9fbdbf24e0',
'androidx.lifecycle:lifecycle-viewmodel:2.5.1:lifecycle-viewmodel-2.5.1.aar:14a27d5fb8a1436b1b7dec18bebaa66c830cdbbc8e28a81ce5f85b7c33b3ae9d',
'androidx.lifecycle:lifecycle-livedata-core-ktx:2.6.2:lifecycle-livedata-core-ktx-2.6.2.aar:9f2c16e33a55ba8d67a3623a55befff2ec80643e3f0a926760df1d957c3f8aef',
'androidx.lifecycle:lifecycle-livedata-core:2.6.2:lifecycle-livedata-core-2.6.2.aar:2256780a3cff4a1e57fbb3d442557c17dc363ab8af105bcaf5261d8e2d5db949',
'androidx.lifecycle:lifecycle-livedata:2.6.2:lifecycle-livedata-2.6.2.aar:67359f609dfc2bf65da1270b23033f856064ec279f058e0a70c715f7c9003031',
'androidx.lifecycle:lifecycle-process:2.6.2:lifecycle-process-2.6.2.aar:0f33b1bd017f965a6afb2e7bf3e3bd343c624061c1986dea8ba2469d04349437',
'androidx.lifecycle:lifecycle-runtime-ktx:2.6.2:lifecycle-runtime-ktx-2.6.2.aar:28a0b834f40edd52e2f8010bdc3057d2a0cc76aaa5ac9311adb0b9ce919ca9cc',
'androidx.lifecycle:lifecycle-runtime:2.6.2:lifecycle-runtime-2.6.2.aar:4867fd5279742fba8388821930cb2affe06d81a52814e7e41e70392ea0ef887c',
'androidx.lifecycle:lifecycle-service:2.6.2:lifecycle-service-2.6.2.aar:8ace99313f0ae6af47194bcafe28f344e363f4d293f84b2b97b481735b04ded2',
'androidx.lifecycle:lifecycle-viewmodel-ktx:2.6.2:lifecycle-viewmodel-ktx-2.6.2.aar:7fc0fa234a3321b1f34db5862b17da83d1c62c1bc66ec2fd4f1bb0a771acfabb',
'androidx.lifecycle:lifecycle-viewmodel-savedstate:2.6.2:lifecycle-viewmodel-savedstate-2.6.2.aar:7bc7dcbab17636ec076f12afe4d02671265c389457b1b366b37a0e8cb91e2da0',
'androidx.lifecycle:lifecycle-viewmodel:2.6.2:lifecycle-viewmodel-2.6.2.aar:e4ff4338999e1c6c9c724719f5d4aa7dd61bf6f545d5256a27a9d375df9f2330',
'androidx.loader:loader:1.0.0:loader-1.0.0.aar:11f735cb3b55c458d470bed9e25254375b518b4b1bad6926783a7026db0f5025',
'androidx.localbroadcastmanager:localbroadcastmanager:1.0.0:localbroadcastmanager-1.0.0.aar:e71c328ceef5c4a7d76f2d86df1b65d65fe2acf868b1a4efd84a3f34336186d8',
'androidx.preference:preference:1.2.0:preference-1.2.0.aar:c6fea18e055df05e407384a34d78a009f381af0529db6a7622ab2334b72fed7b',
'androidx.preference:preference:1.2.1:preference-1.2.1.aar:40ca8adfdb7effb61facb39bd9ca2e2f3a40d106743b0cd6dc9e21e8bedd4f85',
'androidx.print:print:1.0.0:print-1.0.0.aar:1d5c7f3135a1bba661fc373fd72e11eb0a4adbb3396787826dd8e4190d5d9edd',
'androidx.profileinstaller:profileinstaller:1.3.0:profileinstaller-1.3.0.aar:34e8b2bfc74e23c1525e3da903ae449b7f1b440aef45e18159ee470e91997f48',
'androidx.recyclerview:recyclerview-selection:1.1.0:recyclerview-selection-1.1.0.aar:9e2ba1c7d6b0eb5e64c10b1b0eb01b51e8511cee002c9bd56ce9cc138ebc4898',
'androidx.recyclerview:recyclerview:1.1.0:recyclerview-1.1.0.aar:f0d2b5a67d0a91ee1b1c73ef2b636a81f3563925ddd15a1d4e1c41ec28de7a4f',
'androidx.resourceinspection:resourceinspection-annotation:1.0.1:resourceinspection-annotation-1.0.1.jar:8cff870ec6fb31db48a52f4a792335b4bf8de07e03bd37823181526433ccd5cb',
'androidx.savedstate:savedstate-ktx:1.1.0:savedstate-ktx-1.1.0.aar:e44d61347463b0fafeeb649cbcc3d7109b2eb5e11d1522e986105170cdebbf68',
'androidx.savedstate:savedstate:1.2.0:savedstate-1.2.0.aar:2de528d6898e95ef020d22d9ffdf9d1f77cbdd93f92d39dfaa5d5c43b0c311c8',
'androidx.savedstate:savedstate-ktx:1.2.1:savedstate-ktx-1.2.1.aar:8553f87e7136c24ec5243560f48f1c32cba56daa77722f89589a5cafcb8f7894',
'androidx.savedstate:savedstate:1.2.1:savedstate-1.2.1.aar:21a7d4bcf6bdb94ad7b9283801529300b4fbb8808ca4f191e0cdce6fd8e4705a',
'androidx.slidingpanelayout:slidingpanelayout:1.2.0:slidingpanelayout-1.2.0.aar:5f53339be2a4f90a9abea3571dd59e70a8a49e7f15dd82974a3898b4652e8714',
'androidx.startup:startup-runtime:1.1.1:startup-runtime-1.1.1.aar:e0a6329a371262fe4c450372b70fdaf33b769ef6917094723787cfce896b1dd3',
'androidx.test.espresso:espresso-contrib:3.3.0:espresso-contrib-3.3.0.aar:f400cabdc181356acf6b210e4509dcb9649d9e2b6b6e218c60fcfc15e8a756d1',
@@ -87,38 +86,37 @@ dependencyVerification {
'androidx.window:window:1.0.0:window-1.0.0.aar:3212985be4127373ca4d0ea7f8b81a250ae2105e924f7940105d067a0f9ac130',
'cglib:cglib:3.2.8:cglib-3.2.8.jar:3f64de999ecc5595dc84ca8ff0879d8a34c8623f9ef3c517a53ed59023fcb9db',
'com.almworks.sqlite4java:sqlite4java:1.0.392:sqlite4java-1.0.392.jar:243a64470fda0e86a6fddeb0af4c7aa9426ce84e68cbfe18d75ee5da4b7e0b92',
'com.github.bumptech.glide:annotations:4.14.2:annotations-4.14.2.jar:8419bf262be70edeb6b9582b386546be66d2e8659c7aae65fd69a9ede02c4877',
'com.github.bumptech.glide:compiler:4.14.2:compiler-4.14.2.jar:315b1325283c3d0cf9bc0599c1ecdb85e5f7863b1aa25991b63d616b13930cb6',
'com.github.bumptech.glide:gifdecoder:4.14.2:gifdecoder-4.14.2.aar:d021eee1ac1a036fcdc377b6dc3b218f4a0cc2bc2f096d69b474198b635e8302',
'com.github.bumptech.glide:glide:4.14.2:glide-4.14.2.aar:ec32c33f5b289fd7b0a54485e27392f896b239cefd533385e262de1530190c3f',
'com.github.bumptech.glide:annotations:4.16.0:annotations-4.16.0.jar:c59e39b1b31b4d5592277cd90012149d740b569d4338f56443cac82c3fbda3d1',
'com.github.bumptech.glide:compiler:4.16.0:compiler-4.16.0.jar:5fcbd8fcee22bc6aa687387ed35acd792dcb8a27c029b3b81ab818e532073436',
'com.github.bumptech.glide:gifdecoder:4.16.0:gifdecoder-4.16.0.aar:955f872af4d2a321fea2a346fc472225a2b99524acc46781491712e39b6a214f',
'com.github.bumptech.glide:glide:4.16.0:glide-4.16.0.aar:89811c63dd266a4851fd1b79c6fc0c982996ece435f5ff483fb830ca6cb53cd4',
'com.github.chrisbanes:PhotoView:2.3.0:PhotoView-2.3.0.aar:6c8989f2945d50ab38b3e0300064f1f8d2d75bbcae1434fe535d9fb6898e9ad6',
'com.github.kobakei:MaterialFabSpeedDial:1.2.1:MaterialFabSpeedDial-1.2.1.aar:e86198c3c48cd832fb209a769a9f222c2a3cc045743b110ac2391d9737e3ea02',
'com.google.android.apps.common.testing.accessibility.framework:accessibility-test-framework:2.0:accessibility-test-framework-2.0.jar:cdf16ef8f5b8023d003ce3cc1b0d51bda737762e2dab2fedf43d1c4292353f7f',
'com.google.android.material:material:1.7.0:material-1.7.0.aar:56d7a54cf8c30f5d2d3510225bf48841f0ce6fbf896154fbdfee2babca6d9453',
'com.google.android.material:material:1.9.0:material-1.9.0.aar:6cc2359979269e4d9eddce7d84682d2bb06a35a14edce806bf0da6e8d4d31806',
'com.google.auto.value:auto-value-annotations:1.7.4:auto-value-annotations-1.7.4.jar:fedd59b0b4986c342f6ab2d182f2a4ee9fceb2c7e2d5bdc4dc764c92394a23d3',
'com.google.code.findbugs:annotations:3.0.1:annotations-3.0.1.jar:6b47ff0a6de0ce17cbedc3abb0828ca5bce3009d53ea47b3723ff023c4742f79',
'com.google.code.findbugs:jsr305:3.0.2:jsr305-3.0.2.jar:766ad2a0783f2687962c8ad74ceecc38a28b9f72a2d085ee438b7813e928d0c7',
'com.google.dagger:dagger-compiler:2.45:dagger-compiler-2.45.jar:5617dfb994537dba5b41f3744a6dd13ec3cd99789c065e0d5c6fa9f21cf7ca25',
'com.google.dagger:dagger-producers:2.45:dagger-producers-2.45.jar:a05abb4c3ccf6bb0f056bdcb5ef973898ecf172952ab5948a824aeea6c86ecaa',
'com.google.dagger:dagger-spi:2.45:dagger-spi-2.45.jar:7cd6f0b09d88e64a9c97bc80e544ab8ac8fdee9301754413585a74cf64222b27',
'com.google.dagger:dagger:2.45:dagger-2.45.jar:f011cae7d2c0fb7ea17c34e05bc10e768b1081a5892ad019cf1fdb0e125c49c1',
'com.google.devtools.ksp:symbol-processing-api:1.7.0-1.0.6:symbol-processing-api-1.7.0-1.0.6.jar:adc29417be5ca9ff42118105fea4e36d9ef44987abfc41432309371a60198941',
'com.google.errorprone:error_prone_annotations:2.7.1:error_prone_annotations-2.7.1.jar:cd5257c08a246cf8628817ae71cb822be192ef91f6881ca4a3fcff4f1de1cff3',
'com.google.errorprone:error_prone_annotations:2.9.0:error_prone_annotations-2.9.0.jar:f947bdc33ae27a6b4aa44799e6c21e1944797bd0010ba43eb82d11446e163694',
'com.google.dagger:dagger-compiler:2.51.1:dagger-compiler-2.51.1.jar:14cf2def1c4c8cd3b977840e297b463191d537cd1c8330992ca5c0b341a641ad',
'com.google.dagger:dagger-spi:2.51.1:dagger-spi-2.51.1.jar:deb52030b92b27c5dcd76b2c0747f1cf105b60939f6073b43eb06cfe7c9ba601',
'com.google.dagger:dagger:2.51.1:dagger-2.51.1.jar:c3891a4c4a4e48682888ca321eaf8497004b286e1d9a2936867373219f7dd86d',
'com.google.devtools.ksp:symbol-processing-api:1.9.20-1.0.14:symbol-processing-api-1.9.20-1.0.14.jar:d0339396f40dc9eb3b3f7bc86257f93869ee23448fa31ec4a1de900c6b7ae6d7',
'com.google.errorprone:error_prone_annotations:2.15.0:error_prone_annotations-2.15.0.jar:067047714349e7789a5bdbfad9d1c0af9f3a1eb28c55a0ee3f68e682f905c4eb',
'com.google.errorprone:error_prone_annotations:2.23.0:error_prone_annotations-2.23.0.jar:ec6f39f068b6ff9ac323c68e28b9299f8c0a80ca512dccb1d4a70f40ac3ec054',
'com.google.errorprone:javac-shaded:9-dev-r4023-3:javac-shaded-9-dev-r4023-3.jar:65bfccf60986c47fbc17c9ebab0be626afc41741e0a6ec7109e0768817a36f30',
'com.google.googlejavaformat:google-java-format:1.5:google-java-format-1.5.jar:aa19ad7850fb85178aa22f2fddb163b84d6ce4d0035872f30d4408195ca1144e',
'com.google.guava:failureaccess:1.0.1:failureaccess-1.0.1.jar:a171ee4c734dd2da837e4b16be9df4661afab72a41adaf31eb84dfdaf936ca26',
'com.google.guava:failureaccess:1.0.2:failureaccess-1.0.2.jar:8a8f81cf9b359e3f6dfa691a1e776985c061ef2f223c9b2c80753e1b458e8064',
'com.google.guava:guava:27.0.1-jre:guava-27.0.1-jre.jar:e1c814fd04492a27c38e0317eabeaa1b3e950ec8010239e400fe90ad6c9107b4',
'com.google.guava:guava:31.0.1-jre:guava-31.0.1-jre.jar:d5be94d65e87bd219fb3193ad1517baa55a3b88fc91d21cf735826ab5af087b9',
'com.google.guava:guava:33.0.0-jre:guava-33.0.0-jre.jar:f4d85c3e4d411694337cb873abea09b242b664bb013320be6105327c45991537',
'com.google.guava:listenablefuture:1.0:listenablefuture-1.0.jar:e4ad7607e5c0477c6f890ef26a49cb8d1bb4dffb650bab4502afee64644e3069',
'com.google.guava:listenablefuture:9999.0-empty-to-avoid-conflict-with-guava:listenablefuture-9999.0-empty-to-avoid-conflict-with-guava.jar:b372a037d4230aa57fbeffdef30fd6123f9c0c2db85d0aced00c91b974f33f99',
'com.google.j2objc:j2objc-annotations:1.1:j2objc-annotations-1.1.jar:2994a7eb78f2710bd3d3bfb639b2c94e219cedac0d4d084d516e78c16dddecf6',
'com.google.j2objc:j2objc-annotations:1.3:j2objc-annotations-1.3.jar:21af30c92267bd6122c0e0b4d20cccb6641a37eaf956c6540ec471d584e64a7b',
'com.google.zxing:core:3.3.3:core-3.3.3.jar:5820f81e943e4bce0329306621e2d6255d2930b0a6ce934c5c23c0d6d3f20599',
'com.ibm.icu:icu4j:70.1:icu4j-70.1.jar:2b4d8d4e098e86aa5f905ec81c46751d218b16afd3f7fc02b64f80dd20fffa20',
'com.jraska:falcon:2.2.0:falcon-2.2.0.aar:8b016c6e016ef99fb493b8614b2362cfba540a68ac16a9bb6da310ae10e30b81',
'com.squareup.okhttp3:okhttp:4.10.0:okhttp-4.10.0.jar:7580f14fa1691206e37081ad3f92063b1603b328da0bb316f2fef02e0562e7ec',
'com.squareup.okio:okio-jvm:3.0.0:okio-jvm-3.0.0.jar:be64a0cc1f28ea9cd5c970dd7e7557af72c808d738c495b397bf897c9921e907',
'com.squareup.okhttp3:okhttp:4.12.0:okhttp-4.12.0.jar:b1050081b14bb7a3a7e55a4d3ef01b5dcfabc453b4573a4fc019767191d5f4e0',
'com.squareup.okio:okio-jvm:3.6.0:okio-jvm-3.6.0.jar:67543f0736fc422ae927ed0e504b98bc5e269fda0d3500579337cb713da28412',
'com.squareup:javapoet:1.13.0:javapoet-1.13.0.jar:4c7517e848a71b36d069d12bb3bf46a70fd4cda3105d822b0ed2e19c00b69291',
'com.squareup:javawriter:2.1.1:javawriter-2.1.1.jar:f699823d0081f69cbb676c1845ea222e0ada79bc88a53e5d22d8bd02d328f57e',
'com.squareup:kotlinpoet:1.11.0:kotlinpoet-1.11.0.jar:2887ada1ca03dd83baa2758640d87e840d1907564db0ef88d2289c868a980492',
@@ -140,7 +138,7 @@ dependencyVerification {
'org.bouncycastle:bcprov-jdk15on:1.68:bcprov-jdk15on-1.68.jar:f732a46c8de7e2232f2007c682a21d1f4cc8a8a0149b6b7bd6aa1afdc65a0f8d',
'org.checkerframework:checker-compat-qual:2.5.5:checker-compat-qual-2.5.5.jar:11d134b245e9cacc474514d2d66b5b8618f8039a1465cdc55bbc0b34e0008b7a',
'org.checkerframework:checker-qual:2.5.2:checker-qual-2.5.2.jar:64b02691c8b9d4e7700f8ee2e742dce7ea2c6e81e662b7522c9ee3bf568c040a',
'org.checkerframework:checker-qual:3.12.0:checker-qual-3.12.0.jar:ff10785ac2a357ec5de9c293cb982a2cbb605c0309ea4cc1cb9b9bc6dbe7f3cb',
'org.checkerframework:checker-qual:3.41.0:checker-qual-3.41.0.jar:2f9f245bf68e4259d610894f2406dc1f6363dc639302bd566e8272e4f4541172',
'org.codehaus.mojo:animal-sniffer-annotations:1.17:animal-sniffer-annotations-1.17.jar:92654f493ecfec52082e76354f0ebf87648dc3d5cec2e3c3cdb947c016747a53',
'org.hamcrest:hamcrest-core:1.3:hamcrest-core-1.3.jar:66fdef91e9739348df7a096aa384a5685f4e875584cce89386a7a47251c4d8e9',
'org.hamcrest:hamcrest-core:2.1:hamcrest-core-2.1.jar:e09109e54a289d88506b9bfec987ddd199f4217c9464132668351b9a4f00bee9',
@@ -153,17 +151,15 @@ dependencyVerification {
'org.jacoco:org.jacoco.core:0.8.7:org.jacoco.core-0.8.7.jar:ad7739b5fb5969aa1a8aead3d74ed54dc82ed012f1f10f336bd1b96e71c1a13c',
'org.jacoco:org.jacoco.report:0.8.7:org.jacoco.report-0.8.7.jar:cc89258623700a6c932592153cb528785876b6da183d5431f97efbba6f020e5b',
'org.jetbrains.kotlin:kotlin-reflect:1.6.10:kotlin-reflect-1.6.10.jar:3277ac102ae17aad10a55abec75ff5696c8d109790396434b496e75087854203',
'org.jetbrains.kotlin:kotlin-stdlib-common:1.7.0:kotlin-stdlib-common-1.7.0.jar:59c6ff64fe9a6604afce03e8aaa75f83586c6030ac71fb0b34ee7cdefed3618f',
'org.jetbrains.kotlin:kotlin-stdlib-common:1.8.20:kotlin-stdlib-common-1.8.20.jar:fa20188abaa8ecf1d0035e93a969b071f10e45a1c8378c314521eade73f75fd5',
'org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.7.0:kotlin-stdlib-jdk7-1.7.0.jar:07e91be9b2ca20672d2bdb7e181b766e73453a2da13492b5ddaee8fa47aea239',
'org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.8.20:kotlin-stdlib-jdk7-1.8.20.jar:af1ec40c3b951afdcc0c2a0173c7b81763c5281c2d5bafbf0a8544a24c5dcc0c',
'org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.7.0:kotlin-stdlib-jdk8-1.7.0.jar:cf058e11db1dfc9944680c8c61b95ac689aaaa8a3eb30bced028100f038f030b',
'org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.8.20:kotlin-stdlib-jdk8-1.8.20.jar:e398b67977622718bf18ff99b739c7d9da060f33fb458a2e25203221c16af010',
'org.jetbrains.kotlin:kotlin-stdlib:1.7.0:kotlin-stdlib-1.7.0.jar:aa88e9625577957f3249a46cb6e166ee09b369e600f7a11d148d16b0a6d87f05',
'org.jetbrains.kotlin:kotlin-stdlib:1.8.20:kotlin-stdlib-1.8.20.jar:4395647b1961d9fb730a34e8dbe56c293157bc0759004cca63d9b5ee6653e5c7',
'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.6.1:kotlinx-coroutines-android-1.6.1.jar:961ebde8138779a299430ca325a86e28c490527a87ba518362fa45c44c7e7e95',
'org.jetbrains.kotlinx:kotlinx-coroutines-core-jvm:1.6.1:kotlinx-coroutines-core-jvm-1.6.1.jar:3a93ffd052844643c0fef950ae5578db47cccbe9e7176d681333182e232bb0f1',
'org.jetbrains.kotlinx:kotlinx-metadata-jvm:0.5.0:kotlinx-metadata-jvm-0.5.0.jar:ca063a96639b08b9eaa0de4d65e899480740a6efbe28ab9a8681a2ced03055a4',
'org.jetbrains.kotlin:kotlin-stdlib-common:1.9.10:kotlin-stdlib-common-1.9.10.jar:cde3341ba18a2ba262b0b7cf6c55b20c90e8d434e42c9a13e6a3f770db965a88',
'org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.9.0:kotlin-stdlib-jdk7-1.9.0.jar:b7979a7aac94055f0d9f1fd3b47ce5ffe1cb6032a842ba9fbe7186f085289178',
'org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.9.10:kotlin-stdlib-jdk7-1.9.10.jar:ac6361bf9ad1ed382c2103d9712c47cdec166232b4903ed596e8876b0681c9b7',
'org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.9.0:kotlin-stdlib-jdk8-1.9.0.jar:a59fa24fdf1ffb594baecdbf0fd10010f977cea10236d487fe3464977a7377fa',
'org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.9.10:kotlin-stdlib-jdk8-1.9.10.jar:a4c74d94d64ce1abe53760fe0389dd941f6fc558d0dab35e47c085a11ec80f28',
'org.jetbrains.kotlin:kotlin-stdlib:1.9.10:kotlin-stdlib-1.9.10.jar:55e989c512b80907799f854309f3bc7782c5b3d13932442d0379d5c472711504',
'org.jetbrains.kotlin:kotlin-stdlib:1.9.20:kotlin-stdlib-1.9.20.jar:28a35bcdff46d864f80f346a617e486284b208d17378c41900dfb1de95a90e6c',
'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.6.4:kotlinx-coroutines-android-1.6.4.jar:3fdc0eed5bc4b83ee9622774520a2db25470370eacd1581cac1e37704f095b00',
'org.jetbrains.kotlinx:kotlinx-coroutines-core-jvm:1.6.4:kotlinx-coroutines-core-jvm-1.6.4.jar:c24c8bb27bb320c4a93871501a7e5e0c61607638907b197aef675513d4c820be',
'org.jetbrains:annotations:13.0:annotations-13.0.jar:ace2a10dc8e2d5fd34925ecac03e4988b2c0f851650c94b8cef49ba1bd111478',
'org.jmock:jmock-imposters:2.12.0:jmock-imposters-2.12.0.jar:3b836269745a137c9b2347e8d7c2104845b126ef04f012d6bfd94f1a7dea7b09',
'org.jmock:jmock-junit4:2.12.0:jmock-junit4-2.12.0.jar:3233062fc889637c151a24f1ee086bad04321ab7d8264fef279daff0fa27205b',