Skip to content

Commit c096ba7

Browse files
committed
Extend sample app with Dialog
1 parent 1bf8757 commit c096ba7

File tree

4 files changed

+73
-0
lines changed

4 files changed

+73
-0
lines changed

sentry-samples/sentry-samples-android/src/main/java/io/sentry/samples/android/MainActivity.java

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
import android.content.Intent;
44
import android.os.Bundle;
55
import android.os.Handler;
6+
import androidx.appcompat.app.AlertDialog;
67
import androidx.appcompat.app.AppCompatActivity;
78
import io.sentry.Attachment;
89
import io.sentry.ISpan;
@@ -275,6 +276,19 @@ public void run() {
275276
CoroutinesUtil.INSTANCE.throwInCoroutine();
276277
});
277278

279+
binding.showDialog.setOnClickListener(
280+
view -> {
281+
new AlertDialog.Builder(MainActivity.this)
282+
.setTitle("Example Title")
283+
.setMessage("Example Message")
284+
.setPositiveButton(
285+
"Close",
286+
(dialog, which) -> {
287+
dialog.dismiss();
288+
})
289+
.show();
290+
});
291+
278292
setContentView(binding.getRoot());
279293
}
280294

sentry-samples/sentry-samples-android/src/main/java/io/sentry/samples/android/compose/ComposeActivity.kt

Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,18 @@ import androidx.activity.compose.setContent
88
import androidx.compose.foundation.Image
99
import androidx.compose.foundation.layout.Arrangement
1010
import androidx.compose.foundation.layout.Column
11+
import androidx.compose.foundation.layout.Spacer
1112
import androidx.compose.foundation.layout.fillMaxSize
1213
import androidx.compose.foundation.layout.padding
14+
import androidx.compose.foundation.layout.size
15+
import androidx.compose.foundation.layout.wrapContentHeight
16+
import androidx.compose.foundation.layout.wrapContentWidth
17+
import androidx.compose.material3.AlertDialogDefaults
18+
import androidx.compose.material3.BasicAlertDialog
1319
import androidx.compose.material3.Button
20+
import androidx.compose.material3.ExperimentalMaterial3Api
21+
import androidx.compose.material3.MaterialTheme
22+
import androidx.compose.material3.Surface
1423
import androidx.compose.material3.Text
1524
import androidx.compose.material3.TextField
1625
import androidx.compose.runtime.Composable
@@ -55,11 +64,14 @@ class ComposeActivity : ComponentActivity() {
5564
}
5665
}
5766

67+
@OptIn(ExperimentalMaterial3Api::class)
5868
@Composable
5969
fun Landing(
6070
navigateGithub: () -> Unit,
6171
navigateGithubWithArgs: () -> Unit
6272
) {
73+
var showDialog by remember { mutableStateOf(false) }
74+
6375
SentryTraced(tag = "buttons_page") {
6476
Column(
6577
verticalArrangement = Arrangement.Center,
@@ -92,6 +104,46 @@ fun Landing(
92104
Text("Crash from Compose")
93105
}
94106
}
107+
SentryTraced(tag = "button_dialog") {
108+
Button(
109+
onClick = {
110+
showDialog = true
111+
},
112+
modifier = Modifier
113+
.testTag("button_show_dialog")
114+
.padding(top = 32.dp)
115+
) {
116+
Text("Show Dialog", modifier = Modifier.sentryReplayUnmask())
117+
}
118+
}
119+
if (showDialog) {
120+
BasicAlertDialog(
121+
onDismissRequest = {
122+
showDialog = false
123+
},
124+
content = {
125+
Surface(
126+
modifier = Modifier
127+
.wrapContentWidth()
128+
.wrapContentHeight(),
129+
shape = MaterialTheme.shapes.large,
130+
tonalElevation = AlertDialogDefaults.TonalElevation
131+
) {
132+
Column(
133+
modifier = Modifier.padding(20.dp),
134+
content = {
135+
Text(
136+
"Dialog Title",
137+
style = MaterialTheme.typography.titleLarge
138+
)
139+
Spacer(Modifier.size(20.dp))
140+
Text("Dialog Content")
141+
}
142+
)
143+
}
144+
}
145+
)
146+
}
95147
}
96148
}
97149
}

sentry-samples/sentry-samples-android/src/main/res/layout/activity_main.xml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -154,6 +154,12 @@
154154
android:layout_height="wrap_content"
155155
android:text="@string/throw_in_coroutine"/>
156156

157+
<Button
158+
android:id="@+id/show_dialog"
159+
android:layout_width="wrap_content"
160+
android:layout_height="wrap_content"
161+
android:text="@string/show_dialog"/>
162+
157163
</LinearLayout>
158164

159165
</ScrollView>

sentry-samples/sentry-samples-android/src/main/res/values/strings.xml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@
2727
<string name="open_metrics">Delightful Developer Metrics</string>
2828
<string name="test_timber_integration">Test Timber</string>
2929
<string name="throw_in_coroutine">Throw exception in coroutine</string>
30+
<string name="show_dialog">Show Dialog</string>
3031
<string name="back_main">Back to Main Activity</string>
3132
<string name="tap_me">text</string>
3233
<string name="lipsum">Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin nibh lorem, venenatis sed nulla vel, venenatis sodales augue. Mauris varius elit eu ligula volutpat, sed tincidunt orci porttitor. Donec et dignissim lacus, sed luctus ipsum. Praesent ornare luctus tortor sit amet ultricies. Cras iaculis et diam et vulputate. Cras ut iaculis mauris, non pellentesque diam. Nunc in laoreet diam, vitae accumsan eros. Morbi non nunc ac eros molestie placerat vitae id dolor. Quisque ornare aliquam ipsum, a dapibus tortor. In eu sodales tellus.

0 commit comments

Comments
 (0)