fix nil itemForIndex map in initialization of GridView from state
This commit is contained in:
+19
-17
@@ -99,31 +99,32 @@ type GridViewState struct {
|
|||||||
|
|
||||||
var _ fyne.Widget = (*GridView)(nil)
|
var _ fyne.Widget = (*GridView)(nil)
|
||||||
|
|
||||||
func NewFixedGridView(items []GridViewItemModel, fetch util.ImageFetcher, placeholder fyne.Resource) *GridView {
|
func newGridView() *GridView {
|
||||||
g := &GridView{
|
return &GridView{
|
||||||
GridViewState: GridViewState{
|
|
||||||
items: items,
|
|
||||||
done: true,
|
|
||||||
imageFetcher: fetch,
|
|
||||||
Placeholder: placeholder,
|
|
||||||
},
|
|
||||||
itemWidth: NewGridViewItem(nil).MinSize().Width,
|
itemWidth: NewGridViewItem(nil).MinSize().Width,
|
||||||
itemForIndex: make(map[int]*GridViewItem),
|
itemForIndex: make(map[int]*GridViewItem),
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func NewFixedGridView(items []GridViewItemModel, fetch util.ImageFetcher, placeholder fyne.Resource) *GridView {
|
||||||
|
g := newGridView()
|
||||||
|
g.GridViewState = GridViewState{
|
||||||
|
items: items,
|
||||||
|
done: true,
|
||||||
|
imageFetcher: fetch,
|
||||||
|
Placeholder: placeholder,
|
||||||
|
}
|
||||||
g.ExtendBaseWidget(g)
|
g.ExtendBaseWidget(g)
|
||||||
g.createGridWrap()
|
g.createGridWrap()
|
||||||
return g
|
return g
|
||||||
}
|
}
|
||||||
|
|
||||||
func NewGridView(iter GridViewIterator, fetch util.ImageFetcher, placeholder fyne.Resource) *GridView {
|
func NewGridView(iter GridViewIterator, fetch util.ImageFetcher, placeholder fyne.Resource) *GridView {
|
||||||
g := &GridView{
|
g := newGridView()
|
||||||
GridViewState: GridViewState{
|
g.GridViewState = GridViewState{
|
||||||
iter: iter,
|
iter: iter,
|
||||||
imageFetcher: fetch,
|
imageFetcher: fetch,
|
||||||
Placeholder: placeholder,
|
Placeholder: placeholder,
|
||||||
},
|
|
||||||
itemWidth: NewGridViewItem(nil).MinSize().Width,
|
|
||||||
itemForIndex: make(map[int]*GridViewItem),
|
|
||||||
}
|
}
|
||||||
g.ExtendBaseWidget(g)
|
g.ExtendBaseWidget(g)
|
||||||
g.createGridWrap()
|
g.createGridWrap()
|
||||||
@@ -142,7 +143,8 @@ func (g *GridView) SaveToState() *GridViewState {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func NewGridViewFromState(state *GridViewState) *GridView {
|
func NewGridViewFromState(state *GridViewState) *GridView {
|
||||||
g := &GridView{GridViewState: *state}
|
g := newGridView()
|
||||||
|
g.GridViewState = *state
|
||||||
g.ExtendBaseWidget(g)
|
g.ExtendBaseWidget(g)
|
||||||
g.createGridWrap()
|
g.createGridWrap()
|
||||||
g.Refresh() // needed to initialize the widget
|
g.Refresh() // needed to initialize the widget
|
||||||
|
|||||||
Reference in New Issue
Block a user