Skip to content

Commit c20a795

Browse files
committed
Make internal span to nullable type in sequential grid
1 parent 6abc2a8 commit c20a795

File tree

3 files changed

+5
-10
lines changed

3 files changed

+5
-10
lines changed

grid/src/commonMain/kotlin/com/cheonjaeung/compose/grid/GridScope.kt

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -30,11 +30,7 @@ interface GridScope {
3030

3131
internal object GridScopeInstance : GridScope {
3232
override fun Modifier.span(span: (GridItemSpanScope.() -> Int)?): Modifier {
33-
return this.then(
34-
HorizontalVerticalGridSpanElement(
35-
span ?: HorizontalVerticalGridParentData.DefaultSpan
36-
)
37-
)
33+
return this.then(HorizontalVerticalGridSpanElement(span = span))
3834
}
3935

4036
override fun Modifier.align(alignment: Alignment): Modifier {

grid/src/commonMain/kotlin/com/cheonjaeung/compose/grid/HorizontalVerticalGridParentData.kt

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,10 @@ import androidx.compose.ui.Alignment
66
* A data class to contain modifier options of item at the specified position.
77
*/
88
internal data class HorizontalVerticalGridParentData(
9-
var span: GridItemSpanScope.() -> Int = DefaultSpan,
9+
var span: (GridItemSpanScope.() -> Int)? = null,
1010
var alignment: Alignment = DefaultAlignment
1111
) {
1212
companion object {
13-
internal val DefaultSpan: GridItemSpanScope.() -> Int = { 1 }
1413
internal val DefaultAlignment: Alignment = Alignment.TopStart
1514
}
1615
}

grid/src/commonMain/kotlin/com/cheonjaeung/compose/grid/HorizontalVerticalGridSpanModifier.kt

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ import androidx.compose.ui.platform.InspectorInfo
77
import androidx.compose.ui.unit.Density
88

99
internal class HorizontalVerticalGridSpanElement(
10-
val span: GridItemSpanScope.() -> Int
10+
val span: (GridItemSpanScope.() -> Int)?
1111
) : ModifierNodeElement<HorizontalVerticalGridSpanNode>() {
1212
override fun create(): HorizontalVerticalGridSpanNode {
1313
return HorizontalVerticalGridSpanNode(span)
@@ -35,11 +35,11 @@ internal class HorizontalVerticalGridSpanElement(
3535
}
3636

3737
internal class HorizontalVerticalGridSpanNode(
38-
var span: GridItemSpanScope.() -> Int
38+
var span: (GridItemSpanScope.() -> Int)?
3939
) : Modifier.Node(), ParentDataModifierNode {
4040
override fun Density.modifyParentData(parentData: Any?): Any {
4141
val p = parentData as? HorizontalVerticalGridParentData ?: HorizontalVerticalGridParentData()
42-
if (p.span == HorizontalVerticalGridParentData.DefaultSpan) {
42+
if (p.span == null) {
4343
p.span = span
4444
}
4545
return p

0 commit comments

Comments
 (0)