made input bar bigger
This commit is contained in:
@@ -21,8 +21,10 @@ func main() {
|
|||||||
var historyList *widget.List
|
var historyList *widget.List
|
||||||
|
|
||||||
// Dice input bar
|
// Dice input bar
|
||||||
diceInputEntry := newCustomEntry(fyne.CurrentApp().Settings().Theme().Size(theme.SizeNameText) * 2)
|
inputTextSize := fyne.CurrentApp().Settings().Theme().Size(theme.SizeNameText) * 2
|
||||||
|
diceInputEntry := newCustomEntry(inputTextSize)
|
||||||
diceInputEntry.SetPlaceHolder("e.g., 2d20H, 3d6+5")
|
diceInputEntry.SetPlaceHolder("e.g., 2d20H, 3d6+5")
|
||||||
|
diceInputContainer := container.NewThemeOverride(diceInputEntry, newSizeOverrideTheme(fyne.CurrentApp().Settings().Theme(), inputTextSize))
|
||||||
|
|
||||||
historyList = widget.NewList(
|
historyList = widget.NewList(
|
||||||
func() int {
|
func() int {
|
||||||
@@ -202,7 +204,7 @@ func main() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
topContent := container.NewBorder(
|
topContent := container.NewBorder(
|
||||||
diceInputEntry,
|
diceInputContainer,
|
||||||
nil,
|
nil,
|
||||||
nil,
|
nil,
|
||||||
nil,
|
nil,
|
||||||
|
|||||||
@@ -218,6 +218,15 @@ type customEntry struct {
|
|||||||
TextSize float32
|
TextSize float32
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (e *customEntry) MinSize() fyne.Size {
|
||||||
|
min := e.Entry.MinSize()
|
||||||
|
targetHeight := e.TextSize * 2.2
|
||||||
|
if min.Height < targetHeight {
|
||||||
|
min.Height = targetHeight
|
||||||
|
}
|
||||||
|
return min
|
||||||
|
}
|
||||||
|
|
||||||
func (e *customEntry) CreateRenderer() fyne.WidgetRenderer {
|
func (e *customEntry) CreateRenderer() fyne.WidgetRenderer {
|
||||||
// Call the parent's CreateRenderer to ensure proper initialization
|
// Call the parent's CreateRenderer to ensure proper initialization
|
||||||
renderer := e.Entry.CreateRenderer()
|
renderer := e.Entry.CreateRenderer()
|
||||||
@@ -235,12 +244,6 @@ type customEntryRenderer struct {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func (r *customEntryRenderer) Layout(size fyne.Size) {
|
func (r *customEntryRenderer) Layout(size fyne.Size) {
|
||||||
// Update TextSize on all canvas text objects
|
|
||||||
for _, obj := range r.parentRenderer.Objects() {
|
|
||||||
if text, ok := obj.(*canvas.Text); ok {
|
|
||||||
text.TextSize = r.entry.TextSize
|
|
||||||
}
|
|
||||||
}
|
|
||||||
r.parentRenderer.Layout(size)
|
r.parentRenderer.Layout(size)
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -249,12 +252,6 @@ func (r *customEntryRenderer) MinSize() fyne.Size {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func (r *customEntryRenderer) Refresh() {
|
func (r *customEntryRenderer) Refresh() {
|
||||||
// Update TextSize on all canvas text objects
|
|
||||||
for _, obj := range r.parentRenderer.Objects() {
|
|
||||||
if text, ok := obj.(*canvas.Text); ok {
|
|
||||||
text.TextSize = r.entry.TextSize
|
|
||||||
}
|
|
||||||
}
|
|
||||||
r.parentRenderer.Refresh()
|
r.parentRenderer.Refresh()
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -427,3 +424,22 @@ func maxUniformButtonTextSize(label string, size fyne.Size) float32 {
|
|||||||
}
|
}
|
||||||
return maxByHeight
|
return maxByHeight
|
||||||
}
|
}
|
||||||
|
|
||||||
|
type sizeOverrideTheme struct {
|
||||||
|
fyne.Theme
|
||||||
|
textSize float32
|
||||||
|
}
|
||||||
|
|
||||||
|
func (t *sizeOverrideTheme) Size(name fyne.ThemeSizeName) float32 {
|
||||||
|
if name == theme.SizeNameText {
|
||||||
|
return t.textSize
|
||||||
|
}
|
||||||
|
return t.Theme.Size(name)
|
||||||
|
}
|
||||||
|
|
||||||
|
func newSizeOverrideTheme(base fyne.Theme, textSize float32) fyne.Theme {
|
||||||
|
return &sizeOverrideTheme{
|
||||||
|
Theme: base,
|
||||||
|
textSize: textSize,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user