Skip to content

Commit abcfff6

Browse files
authored
Merge branch 'develop' into chore/cleanupPR
2 parents 38d937d + d89336f commit abcfff6

File tree

45 files changed

+681
-145
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

45 files changed

+681
-145
lines changed

.github/ISSUE_TEMPLATE/bug_report.md

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
---
2+
name: Bug report
3+
about: Create a report to help us improve
4+
title: "[BUG] "
5+
labels: bug
6+
assignees: ''
7+
8+
---
9+
10+
### Describe the bug
11+
A clear and concise description of what the bug is.
12+
13+
**To Reproduce**
14+
Steps to reproduce the behavior:
15+
1. Go to '...'
16+
2. Click on '....'
17+
3. Scroll down to '....'
18+
4. See error
19+
20+
**Expected behavior**
21+
A clear and concise description of what you expected to happen.
22+
23+
### Screenshots
24+
If applicable, add screenshots to help explain your problem.
25+
26+
### Additional context
27+
Add any other context about the problem here.
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
---
2+
name: Feature request
3+
about: Suggest an idea for this project
4+
title: "[FEATURE] "
5+
labels: feature
6+
assignees: ''
7+
8+
---
9+
10+
**Is your feature request related to a problem? Please describe.**
11+
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
12+
13+
**Describe the solution you'd like**
14+
A clear and concise description of what you want to happen.
15+
16+
**Additional context**
17+
Add any other context or screenshots about the feature request here.

.github/pull_request_template.md

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
<!-- Feel free to leave out sections that are not appropriate for your PR. -->
2+
3+
### Problem Description
4+
5+
6+
### Changes
7+
<!-- Descripe your changes on a high level. If you feel like technical details would be helpful for the reviewer, please add them here. -->
8+
9+
10+
### Steps for testing
11+
12+
13+
### Screenshots

.github/workflows/e2e-test.yml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,15 @@ on:
44
push:
55
branches:
66
- main
7+
- develop
78
pull_request:
89
workflow_dispatch:
910

11+
permissions:
12+
id-token: write
13+
contents: read
14+
checks: write
15+
1016
jobs:
1117
end-to-end-tests:
1218
name: E2E Tests

.github/workflows/unit-test.yml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,15 @@ on:
44
push:
55
branches:
66
- main
7+
- develop
78
pull_request:
89
workflow_dispatch:
910

11+
permissions:
12+
id-token: write
13+
contents: read
14+
checks: write
15+
1016
jobs:
1117
jUnit:
1218
name: JUnit Tests

app/src/main/java/de/tum/informatics/www1/artemis/native_app/android/ui/MainActivity.kt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -91,6 +91,7 @@ class MainActivity : AppCompatActivity(),
9191

9292
override fun onCreate(savedInstanceState: Bundle?) {
9393
super.onCreate(savedInstanceState)
94+
enableEdgeToEdge()
9495

9596
// When the user is logged in, immediately display the course overview.
9697
val startDestination = runBlocking {

core/ui/src/main/kotlin/de/tum/informatics/www1/artemis/native_app/core/ui/common/course/CourseListUi.kt

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,12 +9,22 @@ import androidx.compose.foundation.layout.Column
99
import androidx.compose.foundation.layout.ColumnScope
1010
import androidx.compose.foundation.layout.PaddingValues
1111
import androidx.compose.foundation.layout.Row
12+
import androidx.compose.foundation.layout.WindowInsets
13+
import androidx.compose.foundation.layout.WindowInsetsSides
14+
import androidx.compose.foundation.layout.asPaddingValues
1215
import androidx.compose.foundation.layout.aspectRatio
16+
import androidx.compose.foundation.layout.consumeWindowInsets
1317
import androidx.compose.foundation.layout.fillMaxHeight
1418
import androidx.compose.foundation.layout.fillMaxWidth
1519
import androidx.compose.foundation.layout.height
20+
import androidx.compose.foundation.layout.ime
21+
import androidx.compose.foundation.layout.navigationBars
22+
import androidx.compose.foundation.layout.only
1623
import androidx.compose.foundation.layout.padding
24+
import androidx.compose.foundation.layout.safeContent
25+
import androidx.compose.foundation.layout.safeDrawing
1726
import androidx.compose.foundation.layout.size
27+
import androidx.compose.foundation.layout.systemBars
1828
import androidx.compose.foundation.lazy.grid.GridCells
1929
import androidx.compose.foundation.lazy.grid.LazyGridItemScope
2030
import androidx.compose.foundation.lazy.grid.LazyVerticalGrid
@@ -71,7 +81,9 @@ fun CourseItemGrid(
7181
columns = GridCells.Fixed(columnCount),
7282
verticalArrangement = Arrangement.spacedBy(8.dp),
7383
horizontalArrangement = Arrangement.spacedBy(8.dp),
74-
contentPadding = PaddingValues(bottom = 90.dp)
84+
contentPadding = PaddingValues(
85+
bottom = WindowInsets.systemBars.asPaddingValues().calculateBottomPadding()
86+
)
7587
) {
7688
items(courses, key = { it.course.id ?: 0L }) { course ->
7789
courseItem(course, courseItemModifier, isCompact)

feature/course-registration/src/main/kotlin/de/tum/informatics/www1/artemis/native_app/feature/courseregistration/RegisterForCourseUi.kt

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,13 @@ import androidx.compose.foundation.layout.Box
66
import androidx.compose.foundation.layout.Column
77
import androidx.compose.foundation.layout.ColumnScope
88
import androidx.compose.foundation.layout.Row
9+
import androidx.compose.foundation.layout.WindowInsets
10+
import androidx.compose.foundation.layout.asPaddingValues
11+
import androidx.compose.foundation.layout.consumeWindowInsets
912
import androidx.compose.foundation.layout.fillMaxSize
1013
import androidx.compose.foundation.layout.fillMaxWidth
1114
import androidx.compose.foundation.layout.padding
15+
import androidx.compose.foundation.layout.systemBars
1216
import androidx.compose.foundation.lazy.grid.GridCells
1317
import androidx.compose.foundation.lazy.grid.GridItemSpan
1418
import androidx.compose.foundation.lazy.grid.LazyVerticalGrid
@@ -140,7 +144,8 @@ internal fun RegisterForCourseScreen(
140144
RegisterForCourseContent(
141145
modifier = Modifier
142146
.fillMaxSize()
143-
.padding(padding)
147+
.padding(top = padding.calculateTopPadding())
148+
.consumeWindowInsets(WindowInsets.systemBars)
144149
.padding(horizontal = 8.dp),
145150
courses = courses,
146151
serverUrl = properServerUrl,
@@ -235,6 +240,7 @@ private fun RegisterForCourseContent(
235240
.fillMaxSize()
236241
.testTag(TEST_TAG_REGISTRABLE_COURSE_LIST),
237242
columns = GridCells.Fixed(columnCount),
243+
contentPadding = WindowInsets.systemBars.asPaddingValues(),
238244
verticalArrangement = Arrangement.spacedBy(8.dp),
239245
horizontalArrangement = Arrangement.spacedBy(8.dp),
240246
) {

feature/course-view/src/main/kotlin/de/tum/informatics/www1/artemis/native_app/feature/courseview/ui/WeeklyItemsUi.kt

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,13 @@ package de.tum.informatics.www1.artemis.native_app.feature.courseview.ui
33
import android.os.Parcelable
44
import androidx.compose.foundation.clickable
55
import androidx.compose.foundation.layout.Arrangement
6+
import androidx.compose.foundation.layout.PaddingValues
67
import androidx.compose.foundation.layout.Row
8+
import androidx.compose.foundation.layout.WindowInsets
9+
import androidx.compose.foundation.layout.asPaddingValues
710
import androidx.compose.foundation.layout.fillMaxWidth
811
import androidx.compose.foundation.layout.padding
12+
import androidx.compose.foundation.layout.systemBars
913
import androidx.compose.foundation.lazy.LazyColumn
1014
import androidx.compose.foundation.lazy.items
1115
import androidx.compose.material.icons.Icons
@@ -71,7 +75,13 @@ internal fun <T> WeeklyItemsLazyColumn(
7175
}
7276
}
7377

74-
LazyColumn(modifier = modifier, verticalArrangement = verticalArrangement) {
78+
LazyColumn(
79+
modifier = modifier,
80+
verticalArrangement = verticalArrangement,
81+
contentPadding = PaddingValues(
82+
bottom = WindowInsets.systemBars.asPaddingValues().calculateBottomPadding()
83+
)
84+
) {
7585
weeklyItemGroups.forEachIndexed { index, weeklyItems ->
7686
item {
7787
WeeklyItemsSectionHeader(

feature/course-view/src/main/kotlin/de/tum/informatics/www1/artemis/native_app/feature/courseview/ui/course_overview/CourseUiScreen.kt

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,11 @@ import androidx.compose.animation.slideInHorizontally
66
import androidx.compose.animation.slideOutHorizontally
77
import androidx.compose.animation.togetherWith
88
import androidx.compose.foundation.layout.Box
9+
import androidx.compose.foundation.layout.WindowInsets
10+
import androidx.compose.foundation.layout.consumeWindowInsets
911
import androidx.compose.foundation.layout.fillMaxSize
1012
import androidx.compose.foundation.layout.padding
13+
import androidx.compose.foundation.layout.systemBars
1114
import androidx.compose.material3.MaterialTheme
1215
import androidx.compose.material3.Scaffold
1316
import androidx.compose.material3.Text
@@ -331,7 +334,8 @@ internal fun CourseUiScreen(
331334
BasicDataStateUi(
332335
modifier = Modifier
333336
.fillMaxSize()
334-
.padding(padding),
337+
.padding(top = padding.calculateTopPadding())
338+
.consumeWindowInsets(WindowInsets.systemBars),
335339
dataState = courseDataState,
336340
loadingText = stringResource(id = R.string.course_ui_loading_course_loading),
337341
failureText = stringResource(id = R.string.course_ui_loading_course_failed),

0 commit comments

Comments
 (0)