diff --git a/app/focus_tracker.go b/app/focus_tracker.go index 1a2c1c27..03ef6965 100644 --- a/app/focus_tracker.go +++ b/app/focus_tracker.go @@ -20,17 +20,17 @@ const ( // FocusTracker is used by the app to track which onscreen widget currently has focus, // and to move focus between widgets. type FocusTracker struct { - App *tview.Application Idx int IsFocused bool Widgets []wtf.Wtfable - config *config.Config + config *config.Config + tviewApp *tview.Application } -func NewFocusTracker(app *tview.Application, widgets []wtf.Wtfable, config *config.Config) FocusTracker { +func NewFocusTracker(tviewApp *tview.Application, widgets []wtf.Wtfable, config *config.Config) FocusTracker { focusTracker := FocusTracker{ - App: app, + tviewApp: tviewApp, Idx: -1, IsFocused: false, Widgets: widgets, @@ -196,7 +196,7 @@ func (tracker *FocusTracker) focus(idx int) { widget.CommonSettings().Colors.BorderTheme.Focused, ), ) - tracker.App.SetFocus(view) + tracker.tviewApp.SetFocus(view) } func (tracker *FocusTracker) focusables() []wtf.Wtfable { @@ -239,7 +239,7 @@ func (tracker *FocusTracker) focusState() FocusState { } for _, widget := range tracker.Widgets { - if widget.TextView() == tracker.App.GetFocus() { + if widget.TextView() == tracker.tviewApp.GetFocus() { return widgetFocused } } diff --git a/app/widget_maker.go b/app/widget_maker.go index fc86484f..784111ec 100644 --- a/app/widget_maker.go +++ b/app/widget_maker.go @@ -80,7 +80,7 @@ import ( // MakeWidget creates and returns instances of widgets func MakeWidget( - app *tview.Application, + tviewApp *tview.Application, pages *tview.Pages, moduleName string, config *config.Config, @@ -103,239 +103,239 @@ func MakeWidget( switch moduleConfig.UString("type", moduleName) { case "arpansagovau": settings := arpansagovau.NewSettingsFromYAML(moduleName, moduleConfig, config) - widget = arpansagovau.NewWidget(app, settings) + widget = arpansagovau.NewWidget(tviewApp, settings) case "azuredevops": settings := azuredevops.NewSettingsFromYAML(moduleName, moduleConfig, config) - widget = azuredevops.NewWidget(app, pages, settings) + widget = azuredevops.NewWidget(tviewApp, pages, settings) case "bamboohr": settings := bamboohr.NewSettingsFromYAML(moduleName, moduleConfig, config) - widget = bamboohr.NewWidget(app, settings) + widget = bamboohr.NewWidget(tviewApp, settings) case "bargraph": settings := bargraph.NewSettingsFromYAML(moduleName, moduleConfig, config) - widget = bargraph.NewWidget(app, settings) + widget = bargraph.NewWidget(tviewApp, settings) case "bittrex": settings := bittrex.NewSettingsFromYAML(moduleName, moduleConfig, config) - widget = bittrex.NewWidget(app, settings) + widget = bittrex.NewWidget(tviewApp, settings) case "blockfolio": settings := blockfolio.NewSettingsFromYAML(moduleName, moduleConfig, config) - widget = blockfolio.NewWidget(app, settings) + widget = blockfolio.NewWidget(tviewApp, settings) case "buildkite": settings := buildkite.NewSettingsFromYAML(moduleName, moduleConfig, config) - widget = buildkite.NewWidget(app, pages, settings) + widget = buildkite.NewWidget(tviewApp, pages, settings) case "cdsFavorites": settings := cdsfavorites.NewSettingsFromYAML(moduleName, moduleConfig, config) - widget = cdsfavorites.NewWidget(app, pages, settings) + widget = cdsfavorites.NewWidget(tviewApp, pages, settings) case "cdsQueue": settings := cdsqueue.NewSettingsFromYAML(moduleName, moduleConfig, config) - widget = cdsqueue.NewWidget(app, pages, settings) + widget = cdsqueue.NewWidget(tviewApp, pages, settings) case "cdsStatus": settings := cdsstatus.NewSettingsFromYAML(moduleName, moduleConfig, config) - widget = cdsstatus.NewWidget(app, pages, settings) + widget = cdsstatus.NewWidget(tviewApp, pages, settings) case "circleci": settings := circleci.NewSettingsFromYAML(moduleName, moduleConfig, config) - widget = circleci.NewWidget(app, settings) + widget = circleci.NewWidget(tviewApp, settings) case "clocks": settings := clocks.NewSettingsFromYAML(moduleName, moduleConfig, config) - widget = clocks.NewWidget(app, settings) + widget = clocks.NewWidget(tviewApp, settings) case "cmdrunner": settings := cmdrunner.NewSettingsFromYAML(moduleName, moduleConfig, config) - widget = cmdrunner.NewWidget(app, settings) + widget = cmdrunner.NewWidget(tviewApp, settings) case "cryptolive": settings := cryptolive.NewSettingsFromYAML(moduleName, moduleConfig, config) - widget = cryptolive.NewWidget(app, settings) + widget = cryptolive.NewWidget(tviewApp, settings) case "datadog": settings := datadog.NewSettingsFromYAML(moduleName, moduleConfig, config) - widget = datadog.NewWidget(app, pages, settings) + widget = datadog.NewWidget(tviewApp, pages, settings) case "devto": settings := devto.NewSettingsFromYAML(moduleName, moduleConfig, config) - widget = devto.NewWidget(app, pages, settings) + widget = devto.NewWidget(tviewApp, pages, settings) case "digitalclock": settings := digitalclock.NewSettingsFromYAML(moduleName, moduleConfig, config) - widget = digitalclock.NewWidget(app, settings) + widget = digitalclock.NewWidget(tviewApp, settings) case "digitalocean": settings := digitalocean.NewSettingsFromYAML(moduleName, moduleConfig, config) - widget = digitalocean.NewWidget(app, pages, settings) + widget = digitalocean.NewWidget(tviewApp, pages, settings) case "docker": settings := docker.NewSettingsFromYAML(moduleName, moduleConfig, config) - widget = docker.NewWidget(app, pages, settings) + widget = docker.NewWidget(tviewApp, pages, settings) case "feedreader": settings := feedreader.NewSettingsFromYAML(moduleName, moduleConfig, config) - widget = feedreader.NewWidget(app, pages, settings) + widget = feedreader.NewWidget(tviewApp, pages, settings) case "football": settings := football.NewSettingsFromYAML(moduleName, moduleConfig, config) - widget = football.NewWidget(app, pages, settings) + widget = football.NewWidget(tviewApp, pages, settings) case "gcal": settings := gcal.NewSettingsFromYAML(moduleName, moduleConfig, config) - widget = gcal.NewWidget(app, settings) + widget = gcal.NewWidget(tviewApp, settings) case "gerrit": settings := gerrit.NewSettingsFromYAML(moduleName, moduleConfig, config) - widget = gerrit.NewWidget(app, pages, settings) + widget = gerrit.NewWidget(tviewApp, pages, settings) case "git": settings := git.NewSettingsFromYAML(moduleName, moduleConfig, config) - widget = git.NewWidget(app, pages, settings) + widget = git.NewWidget(tviewApp, pages, settings) case "github": settings := github.NewSettingsFromYAML(moduleName, moduleConfig, config) - widget = github.NewWidget(app, pages, settings) + widget = github.NewWidget(tviewApp, pages, settings) case "gitlab": settings := gitlab.NewSettingsFromYAML(moduleName, moduleConfig, config) - widget = gitlab.NewWidget(app, pages, settings) + widget = gitlab.NewWidget(tviewApp, pages, settings) case "gitlabtodo": settings := gitlabtodo.NewSettingsFromYAML(moduleName, moduleConfig, config) - widget = gitlabtodo.NewWidget(app, pages, settings) + widget = gitlabtodo.NewWidget(tviewApp, pages, settings) case "gitter": settings := gitter.NewSettingsFromYAML(moduleName, moduleConfig, config) - widget = gitter.NewWidget(app, pages, settings) + widget = gitter.NewWidget(tviewApp, pages, settings) case "googleanalytics": settings := googleanalytics.NewSettingsFromYAML(moduleName, moduleConfig, config) - widget = googleanalytics.NewWidget(app, settings) + widget = googleanalytics.NewWidget(tviewApp, settings) case "gspreadsheets": settings := gspreadsheets.NewSettingsFromYAML(moduleName, moduleConfig, config) - widget = gspreadsheets.NewWidget(app, settings) + widget = gspreadsheets.NewWidget(tviewApp, settings) case "grafana": settings := grafana.NewSettingsFromYAML(moduleName, moduleConfig, config) - widget = grafana.NewWidget(app, pages, settings) + widget = grafana.NewWidget(tviewApp, pages, settings) case "hackernews": settings := hackernews.NewSettingsFromYAML(moduleName, moduleConfig, config) - widget = hackernews.NewWidget(app, pages, settings) + widget = hackernews.NewWidget(tviewApp, pages, settings) case "hibp": settings := hibp.NewSettingsFromYAML(moduleName, moduleConfig, config) - widget = hibp.NewWidget(app, settings) + widget = hibp.NewWidget(tviewApp, settings) case "ipapi": settings := ipapi.NewSettingsFromYAML(moduleName, moduleConfig, config) - widget = ipapi.NewWidget(app, settings) + widget = ipapi.NewWidget(tviewApp, settings) case "ipinfo": settings := ipinfo.NewSettingsFromYAML(moduleName, moduleConfig, config) - widget = ipinfo.NewWidget(app, settings) + widget = ipinfo.NewWidget(tviewApp, settings) case "jenkins": settings := jenkins.NewSettingsFromYAML(moduleName, moduleConfig, config) - widget = jenkins.NewWidget(app, pages, settings) + widget = jenkins.NewWidget(tviewApp, pages, settings) case "jira": settings := jira.NewSettingsFromYAML(moduleName, moduleConfig, config) - widget = jira.NewWidget(app, pages, settings) + widget = jira.NewWidget(tviewApp, pages, settings) case "kubernetes": settings := kubernetes.NewSettingsFromYAML(moduleName, moduleConfig, config) - widget = kubernetes.NewWidget(app, settings) + widget = kubernetes.NewWidget(tviewApp, settings) case "krisinformation": settings := krisinformation.NewSettingsFromYAML(moduleName, moduleConfig, config) - widget = krisinformation.NewWidget(app, settings) + widget = krisinformation.NewWidget(tviewApp, settings) case "logger": settings := logger.NewSettingsFromYAML(moduleName, moduleConfig, config) - widget = logger.NewWidget(app, settings) + widget = logger.NewWidget(tviewApp, settings) case "mercurial": settings := mercurial.NewSettingsFromYAML(moduleName, moduleConfig, config) - widget = mercurial.NewWidget(app, pages, settings) + widget = mercurial.NewWidget(tviewApp, pages, settings) case "nbascore": settings := nbascore.NewSettingsFromYAML(moduleName, moduleConfig, config) - widget = nbascore.NewWidget(app, pages, settings) + widget = nbascore.NewWidget(tviewApp, pages, settings) case "newrelic": settings := newrelic.NewSettingsFromYAML(moduleName, moduleConfig, config) - widget = newrelic.NewWidget(app, pages, settings) + widget = newrelic.NewWidget(tviewApp, pages, settings) case "opsgenie": settings := opsgenie.NewSettingsFromYAML(moduleName, moduleConfig, config) - widget = opsgenie.NewWidget(app, settings) + widget = opsgenie.NewWidget(tviewApp, settings) case "pagerduty": settings := pagerduty.NewSettingsFromYAML(moduleName, moduleConfig, config) - widget = pagerduty.NewWidget(app, settings) + widget = pagerduty.NewWidget(tviewApp, settings) case "pihole": settings := pihole.NewSettingsFromYAML(moduleName, moduleConfig, config) - widget = pihole.NewWidget(app, pages, settings) + widget = pihole.NewWidget(tviewApp, pages, settings) case "power": settings := power.NewSettingsFromYAML(moduleName, moduleConfig, config) - widget = power.NewWidget(app, settings) + widget = power.NewWidget(tviewApp, settings) case "prettyweather": settings := prettyweather.NewSettingsFromYAML(moduleName, moduleConfig, config) - widget = prettyweather.NewWidget(app, settings) + widget = prettyweather.NewWidget(tviewApp, settings) case "pocket": settings := pocket.NewSettingsFromYAML(moduleName, moduleConfig, config) - widget = pocket.NewWidget(app, pages, settings) + widget = pocket.NewWidget(tviewApp, pages, settings) case "resourceusage": settings := resourceusage.NewSettingsFromYAML(moduleName, moduleConfig, config) - widget = resourceusage.NewWidget(app, settings) + widget = resourceusage.NewWidget(tviewApp, settings) case "rollbar": settings := rollbar.NewSettingsFromYAML(moduleName, moduleConfig, config) - widget = rollbar.NewWidget(app, pages, settings) + widget = rollbar.NewWidget(tviewApp, pages, settings) case "security": settings := security.NewSettingsFromYAML(moduleName, moduleConfig, config) - widget = security.NewWidget(app, settings) + widget = security.NewWidget(tviewApp, settings) case "spacex": settings := spacex.NewSettingsFromYAML(moduleName, moduleConfig, config) - widget = spacex.NewWidget(app, settings) + widget = spacex.NewWidget(tviewApp, settings) case "spotify": settings := spotify.NewSettingsFromYAML(moduleName, moduleConfig, config) - widget = spotify.NewWidget(app, pages, settings) + widget = spotify.NewWidget(tviewApp, pages, settings) case "spotifyweb": settings := spotifyweb.NewSettingsFromYAML(moduleName, moduleConfig, config) - widget = spotifyweb.NewWidget(app, pages, settings) + widget = spotifyweb.NewWidget(tviewApp, pages, settings) case "status": settings := status.NewSettingsFromYAML(moduleName, moduleConfig, config) - widget = status.NewWidget(app, settings) + widget = status.NewWidget(tviewApp, settings) case "subreddit": settings := subreddit.NewSettingsFromYAML(moduleName, moduleConfig, config) - widget = subreddit.NewWidget(app, pages, settings) + widget = subreddit.NewWidget(tviewApp, pages, settings) case "textfile": settings := textfile.NewSettingsFromYAML(moduleName, moduleConfig, config) - widget = textfile.NewWidget(app, pages, settings) + widget = textfile.NewWidget(tviewApp, pages, settings) case "todo": settings := todo.NewSettingsFromYAML(moduleName, moduleConfig, config) - widget = todo.NewWidget(app, pages, settings) + widget = todo.NewWidget(tviewApp, pages, settings) case "todo_plus": settings := todo_plus.NewSettingsFromYAML(moduleName, moduleConfig, config) - widget = todo_plus.NewWidget(app, pages, settings) + widget = todo_plus.NewWidget(tviewApp, pages, settings) case "todoist": settings := todo_plus.FromTodoist(moduleName, moduleConfig, config) - widget = todo_plus.NewWidget(app, pages, settings) + widget = todo_plus.NewWidget(tviewApp, pages, settings) case "transmission": settings := transmission.NewSettingsFromYAML(moduleName, moduleConfig, config) - widget = transmission.NewWidget(app, pages, settings) + widget = transmission.NewWidget(tviewApp, pages, settings) case "travisci": settings := travisci.NewSettingsFromYAML(moduleName, moduleConfig, config) - widget = travisci.NewWidget(app, pages, settings) + widget = travisci.NewWidget(tviewApp, pages, settings) case "trello": settings := todo_plus.FromTrello(moduleName, moduleConfig, config) - widget = todo_plus.NewWidget(app, pages, settings) + widget = todo_plus.NewWidget(tviewApp, pages, settings) case "twitch": settings := twitch.NewSettingsFromYAML(moduleName, moduleConfig, config) - widget = twitch.NewWidget(app, pages, settings) + widget = twitch.NewWidget(tviewApp, pages, settings) case "twitter": settings := twitter.NewSettingsFromYAML(moduleName, moduleConfig, config) - widget = twitter.NewWidget(app, pages, settings) + widget = twitter.NewWidget(tviewApp, pages, settings) case "twitterstats": settings := twitterstats.NewSettingsFromYAML(moduleName, moduleConfig, config) - widget = twitterstats.NewWidget(app, pages, settings) + widget = twitterstats.NewWidget(tviewApp, pages, settings) case "uptimerobot": settings := uptimerobot.NewSettingsFromYAML(moduleName, moduleConfig, config) - widget = uptimerobot.NewWidget(app, pages, settings) + widget = uptimerobot.NewWidget(tviewApp, pages, settings) case "victorops": settings := victorops.NewSettingsFromYAML(moduleName, moduleConfig, config) - widget = victorops.NewWidget(app, settings) + widget = victorops.NewWidget(tviewApp, settings) case "weather": settings := weather.NewSettingsFromYAML(moduleName, moduleConfig, config) - widget = weather.NewWidget(app, pages, settings) + widget = weather.NewWidget(tviewApp, pages, settings) case "zendesk": settings := zendesk.NewSettingsFromYAML(moduleName, moduleConfig, config) - widget = zendesk.NewWidget(app, pages, settings) + widget = zendesk.NewWidget(tviewApp, pages, settings) case "exchangerates": settings := exchangerates.NewSettingsFromYAML(moduleName, moduleConfig, config) - widget = exchangerates.NewWidget(app, pages, settings) + widget = exchangerates.NewWidget(tviewApp, pages, settings) case "finnhub": settings := finnhub.NewSettingsFromYAML(moduleName, moduleConfig, config) - widget = finnhub.NewWidget(app, settings) + widget = finnhub.NewWidget(tviewApp, settings) default: settings := unknown.NewSettingsFromYAML(moduleName, moduleConfig, config) - widget = unknown.NewWidget(app, settings) + widget = unknown.NewWidget(tviewApp, settings) } return widget } // MakeWidgets creates and returns a collection of enabled widgets -func MakeWidgets(app *tview.Application, pages *tview.Pages, config *config.Config) []wtf.Wtfable { +func MakeWidgets(tviewApp *tview.Application, pages *tview.Pages, config *config.Config) []wtf.Wtfable { widgets := []wtf.Wtfable{} moduleNames, _ := config.Map("wtf.mods") for moduleName := range moduleNames { - widget := MakeWidget(app, pages, moduleName, config) + widget := MakeWidget(tviewApp, pages, moduleName, config) if widget != nil { widgets = append(widgets, widget) diff --git a/app/wtf_app.go b/app/wtf_app.go index 53e5c96b..911a2f78 100644 --- a/app/wtf_app.go +++ b/app/wtf_app.go @@ -18,36 +18,34 @@ import ( // WtfApp is the container for a collection of widgets that are all constructed from a single // configuration file and displayed together type WtfApp struct { - app *tview.Application config *config.Config configFilePath string display *Display focusTracker FocusTracker ghUser *support.GitHubUser pages *tview.Pages + tviewApp *tview.Application validator *ModuleValidator widgets []wtf.Wtfable } // NewWtfApp creates and returns an instance of WtfApp -func NewWtfApp(app *tview.Application, config *config.Config, configFilePath string) *WtfApp { +func NewWtfApp(tviewApp *tview.Application, config *config.Config, configFilePath string) *WtfApp { wtfApp := WtfApp{ - app: app, + tviewApp: tviewApp, config: config, configFilePath: configFilePath, pages: tview.NewPages(), } - wtfApp.app.SetBeforeDrawFunc(func(s tcell.Screen) bool { + wtfApp.tviewApp.SetBeforeDrawFunc(func(s tcell.Screen) bool { s.Clear() return false }) - wtfApp.app.SetInputCapture(wtfApp.keyboardIntercept) - - wtfApp.widgets = MakeWidgets(wtfApp.app, wtfApp.pages, wtfApp.config) + wtfApp.widgets = MakeWidgets(wtfApp.tviewApp, wtfApp.pages, wtfApp.config) wtfApp.display = NewDisplay(wtfApp.widgets, wtfApp.config) - wtfApp.focusTracker = NewFocusTracker(wtfApp.app, wtfApp.widgets, wtfApp.config) + wtfApp.focusTracker = NewFocusTracker(wtfApp.tviewApp, wtfApp.widgets, wtfApp.config) githubAPIKey := readGitHubAPIKey(wtfApp.config) wtfApp.ghUser = support.NewGitHubUser(githubAPIKey) @@ -55,7 +53,6 @@ func NewWtfApp(app *tview.Application, config *config.Config, configFilePath str wtfApp.validator = NewModuleValidator() wtfApp.pages.AddPage("grid", wtfApp.display.Grid, true, true) - wtfApp.app.SetRoot(wtfApp.pages, true) wtfApp.validator.Validate(wtfApp.widgets) @@ -66,6 +63,9 @@ func NewWtfApp(app *tview.Application, config *config.Config, configFilePath str ), ) + wtfApp.tviewApp.SetInputCapture(wtfApp.keyboardIntercept) + wtfApp.tviewApp.SetRoot(wtfApp.pages, true) + return &wtfApp } @@ -98,7 +98,7 @@ func (wtfApp *WtfApp) keyboardIntercept(event *tcell.EventKey) *tcell.EventKey { switch event.Key() { case tcell.KeyCtrlC: wtfApp.Stop() - wtfApp.app.Stop() + wtfApp.tviewApp.Stop() wtfApp.DisplayExitMessage() case tcell.KeyCtrlR: wtfApp.refreshAllWidgets() @@ -154,7 +154,7 @@ func (wtfApp *WtfApp) watchForConfigChanges() { wtfApp.Stop() config := cfg.LoadWtfConfigFile(wtfApp.configFilePath) - newApp := NewWtfApp(wtfApp.app, config, wtfApp.configFilePath) + newApp := NewWtfApp(wtfApp.tviewApp, config, wtfApp.configFilePath) openURLUtil := utils.ToStrs(config.UList("wtf.openUrlUtil", []interface{}{})) utils.Init(config.UString("wtf.openFileUtil", "open"), openURLUtil) diff --git a/generator/textwidget.tpl b/generator/textwidget.tpl index 0ebc2a19..121586e0 100644 --- a/generator/textwidget.tpl +++ b/generator/textwidget.tpl @@ -9,16 +9,14 @@ import ( type Widget struct { view.TextWidget - app *tview.Application settings *Settings } // NewWidget creates and returns an instance of Widget -func NewWidget(app *tview.Application, pages *tview.Pages, settings *Settings) *Widget { +func NewWidget(tviewApp *tview.Application, pages *tview.Pages, settings *Settings) *Widget { widget := Widget{ - TextWidget: view.NewTextWidget(app, settings.common), + TextWidget: view.NewTextWidget(tviewApp, settings.common), - app: app, settings: settings, } diff --git a/modules/azuredevops/widget.go b/modules/azuredevops/widget.go index 89ff3dd7..270f20db 100644 --- a/modules/azuredevops/widget.go +++ b/modules/azuredevops/widget.go @@ -19,9 +19,9 @@ type Widget struct { ctx context.Context } -func NewWidget(app *tview.Application, pages *tview.Pages, settings *Settings) *Widget { +func NewWidget(tviewApp *tview.Application, pages *tview.Pages, settings *Settings) *Widget { widget := Widget{ - TextWidget: view.NewTextWidget(app, pages, settings.Common), + TextWidget: view.NewTextWidget(tviewApp, pages, settings.Common), settings: settings, } diff --git a/modules/bamboohr/widget.go b/modules/bamboohr/widget.go index dc42f1ad..4463d461 100644 --- a/modules/bamboohr/widget.go +++ b/modules/bamboohr/widget.go @@ -19,9 +19,9 @@ type Widget struct { items []Item } -func NewWidget(app *tview.Application, settings *Settings) *Widget { +func NewWidget(tviewApp *tview.Application, settings *Settings) *Widget { widget := Widget{ - TextWidget: view.NewTextWidget(app, nil, settings.Common), + TextWidget: view.NewTextWidget(tviewApp, nil, settings.Common), settings: settings, } diff --git a/modules/bargraph/widget.go b/modules/bargraph/widget.go index 6eb691f7..3d57f1c0 100644 --- a/modules/bargraph/widget.go +++ b/modules/bargraph/widget.go @@ -17,15 +17,15 @@ import ( type Widget struct { view.BarGraph - app *tview.Application + tviewApp *tview.Application } // NewWidget Make new instance of widget -func NewWidget(app *tview.Application, settings *Settings) *Widget { +func NewWidget(tviewApp *tview.Application, settings *Settings) *Widget { widget := Widget{ - BarGraph: view.NewBarGraph(app, "Sample Bar Graph", settings.Common), + BarGraph: view.NewBarGraph(tviewApp, "Sample Bar Graph", settings.Common), - app: app, + tviewApp: tviewApp, } widget.View.SetWrap(true) @@ -69,7 +69,7 @@ func (widget *Widget) Refresh() { widget.View.Clear() - widget.app.QueueUpdateDraw(func() { + widget.tviewApp.QueueUpdateDraw(func() { display(widget) }) diff --git a/modules/buildkite/widget.go b/modules/buildkite/widget.go index 48949226..6fb35634 100644 --- a/modules/buildkite/widget.go +++ b/modules/buildkite/widget.go @@ -15,9 +15,9 @@ type Widget struct { err error } -func NewWidget(app *tview.Application, pages *tview.Pages, settings *Settings) *Widget { +func NewWidget(tviewApp *tview.Application, pages *tview.Pages, settings *Settings) *Widget { widget := Widget{ - TextWidget: view.NewTextWidget(app, pages, settings.Common), + TextWidget: view.NewTextWidget(tviewApp, pages, settings.Common), settings: settings, } diff --git a/modules/cds/favorites/widget.go b/modules/cds/favorites/widget.go index 1da6b9ef..ec3fcc40 100644 --- a/modules/cds/favorites/widget.go +++ b/modules/cds/favorites/widget.go @@ -27,10 +27,10 @@ type Widget struct { } // NewWidget creates a new instance of the widget -func NewWidget(app *tview.Application, pages *tview.Pages, settings *Settings) *Widget { +func NewWidget(tviewApp *tview.Application, pages *tview.Pages, settings *Settings) *Widget { widget := Widget{ MultiSourceWidget: view.NewMultiSourceWidget(settings.Common, "workflow", "workflows"), - TextWidget: view.NewTextWidget(app, pages, settings.Common), + TextWidget: view.NewTextWidget(tviewApp, pages, settings.Common), settings: settings, } diff --git a/modules/cds/queue/widget.go b/modules/cds/queue/widget.go index 9328c997..23c67b83 100644 --- a/modules/cds/queue/widget.go +++ b/modules/cds/queue/widget.go @@ -27,10 +27,10 @@ type Widget struct { } // NewWidget creates a new instance of the widget -func NewWidget(app *tview.Application, pages *tview.Pages, settings *Settings) *Widget { +func NewWidget(tviewApp *tview.Application, pages *tview.Pages, settings *Settings) *Widget { widget := Widget{ MultiSourceWidget: view.NewMultiSourceWidget(settings.Common, "workflow", "workflows"), - TextWidget: view.NewTextWidget(app, pages, settings.Common), + TextWidget: view.NewTextWidget(tviewApp, pages, settings.Common), settings: settings, } diff --git a/modules/cds/status/widget.go b/modules/cds/status/widget.go index 2f3223c2..94f8a777 100644 --- a/modules/cds/status/widget.go +++ b/modules/cds/status/widget.go @@ -27,10 +27,10 @@ type Widget struct { } // NewWidget creates a new instance of the widget -func NewWidget(app *tview.Application, pages *tview.Pages, settings *Settings) *Widget { +func NewWidget(tviewApp *tview.Application, pages *tview.Pages, settings *Settings) *Widget { widget := Widget{ MultiSourceWidget: view.NewMultiSourceWidget(settings.Common, "workflow", "workflows"), - TextWidget: view.NewTextWidget(app, pages, settings.Common), + TextWidget: view.NewTextWidget(tviewApp, pages, settings.Common), settings: settings, } diff --git a/modules/circleci/widget.go b/modules/circleci/widget.go index 902fbeac..1fb6a403 100644 --- a/modules/circleci/widget.go +++ b/modules/circleci/widget.go @@ -14,9 +14,9 @@ type Widget struct { settings *Settings } -func NewWidget(app *tview.Application, settings *Settings) *Widget { +func NewWidget(tviewApp *tview.Application, settings *Settings) *Widget { widget := Widget{ - TextWidget: view.NewTextWidget(app, nil, settings.Common), + TextWidget: view.NewTextWidget(tviewApp, nil, settings.Common), Client: NewClient(settings.apiKey), settings: settings, diff --git a/modules/clocks/widget.go b/modules/clocks/widget.go index d41316ac..33ca1095 100644 --- a/modules/clocks/widget.go +++ b/modules/clocks/widget.go @@ -8,18 +8,18 @@ import ( type Widget struct { view.TextWidget - app *tview.Application + // app *tview.Application clockColl ClockCollection dateFormat string timeFormat string settings *Settings } -func NewWidget(app *tview.Application, settings *Settings) *Widget { +func NewWidget(tviewApp *tview.Application, settings *Settings) *Widget { widget := Widget{ - TextWidget: view.NewTextWidget(app, nil, settings.Common), + TextWidget: view.NewTextWidget(tviewApp, nil, settings.Common), - app: app, + // app: app, settings: settings, dateFormat: settings.dateFormat, timeFormat: settings.timeFormat, @@ -34,10 +34,8 @@ func NewWidget(app *tview.Application, settings *Settings) *Widget { // Refresh updates the onscreen contents of the widget func (widget *Widget) Refresh() { - widget.app.QueueUpdateDraw(func() { - sortedClocks := widget.clockColl.Sorted(widget.settings.sort) - widget.display(sortedClocks, widget.dateFormat, widget.timeFormat) - }) + sortedClocks := widget.clockColl.Sorted(widget.settings.sort) + widget.display(sortedClocks, widget.dateFormat, widget.timeFormat) } /* -------------------- Unexported Functions -------------------- */ diff --git a/modules/cmdrunner/widget.go b/modules/cmdrunner/widget.go index ccf35a69..dfb3bdaa 100644 --- a/modules/cmdrunner/widget.go +++ b/modules/cmdrunner/widget.go @@ -27,9 +27,9 @@ type Widget struct { } // NewWidget creates a new instance of the widget -func NewWidget(app *tview.Application, settings *Settings) *Widget { +func NewWidget(tviewApp *tview.Application, settings *Settings) *Widget { widget := Widget{ - TextWidget: view.NewTextWidget(app, nil, settings.Common), + TextWidget: view.NewTextWidget(tviewApp, nil, settings.Common), settings: settings, buffer: &bytes.Buffer{}, diff --git a/modules/cryptoexchanges/bittrex/widget.go b/modules/cryptoexchanges/bittrex/widget.go index 2c52fb6a..f3510444 100644 --- a/modules/cryptoexchanges/bittrex/widget.go +++ b/modules/cryptoexchanges/bittrex/widget.go @@ -29,9 +29,9 @@ type Widget struct { } // NewWidget Make new instance of widget -func NewWidget(app *tview.Application, settings *Settings) *Widget { +func NewWidget(tviewApp *tview.Application, settings *Settings) *Widget { widget := Widget{ - TextWidget: view.NewTextWidget(app, nil, settings.Common), + TextWidget: view.NewTextWidget(tviewApp, nil, settings.Common), settings: settings, summaryList: summaryList{}, diff --git a/modules/cryptoexchanges/blockfolio/widget.go b/modules/cryptoexchanges/blockfolio/widget.go index 9be63771..e1f2f8af 100644 --- a/modules/cryptoexchanges/blockfolio/widget.go +++ b/modules/cryptoexchanges/blockfolio/widget.go @@ -18,9 +18,9 @@ type Widget struct { settings *Settings } -func NewWidget(app *tview.Application, settings *Settings) *Widget { +func NewWidget(tviewApp *tview.Application, settings *Settings) *Widget { widget := Widget{ - TextWidget: view.NewTextWidget(app, nil, settings.Common), + TextWidget: view.NewTextWidget(tviewApp, nil, settings.Common), device_token: settings.deviceToken, settings: settings, diff --git a/modules/cryptoexchanges/cryptolive/widget.go b/modules/cryptoexchanges/cryptolive/widget.go index bc008f6e..1ef76d90 100644 --- a/modules/cryptoexchanges/cryptolive/widget.go +++ b/modules/cryptoexchanges/cryptolive/widget.go @@ -20,9 +20,9 @@ type Widget struct { } // NewWidget Make new instance of widget -func NewWidget(app *tview.Application, settings *Settings) *Widget { +func NewWidget(tviewApp *tview.Application, settings *Settings) *Widget { widget := Widget{ - TextWidget: view.NewTextWidget(app, nil, settings.Common), + TextWidget: view.NewTextWidget(tviewApp, nil, settings.Common), priceWidget: price.NewWidget(settings.priceSettings), toplistWidget: toplist.NewWidget(settings.toplistSettings), diff --git a/modules/datadog/widget.go b/modules/datadog/widget.go index 3fbf6dcb..09627c21 100644 --- a/modules/datadog/widget.go +++ b/modules/datadog/widget.go @@ -17,9 +17,9 @@ type Widget struct { err error } -func NewWidget(app *tview.Application, pages *tview.Pages, settings *Settings) *Widget { +func NewWidget(tviewApp *tview.Application, pages *tview.Pages, settings *Settings) *Widget { widget := Widget{ - ScrollableWidget: view.NewScrollableWidget(app, pages, settings.Common), + ScrollableWidget: view.NewScrollableWidget(tviewApp, pages, settings.Common), settings: settings, } diff --git a/modules/devto/widget.go b/modules/devto/widget.go index cc0e1252..d9b47cc5 100644 --- a/modules/devto/widget.go +++ b/modules/devto/widget.go @@ -19,9 +19,9 @@ type Widget struct { err error } -func NewWidget(app *tview.Application, pages *tview.Pages, settings *Settings) *Widget { +func NewWidget(tviewApp *tview.Application, pages *tview.Pages, settings *Settings) *Widget { widget := &Widget{ - ScrollableWidget: view.NewScrollableWidget(app, pages, settings.Common), + ScrollableWidget: view.NewScrollableWidget(tviewApp, pages, settings.Common), settings: settings, } diff --git a/modules/digitalclock/widget.go b/modules/digitalclock/widget.go index 6baa055a..ccc64323 100644 --- a/modules/digitalclock/widget.go +++ b/modules/digitalclock/widget.go @@ -9,16 +9,14 @@ import ( type Widget struct { view.TextWidget - app *tview.Application settings *Settings } // NewWidget creates a new widget using settings -func NewWidget(app *tview.Application, settings *Settings) *Widget { +func NewWidget(tviewApp *tview.Application, settings *Settings) *Widget { widget := Widget{ - TextWidget: view.NewTextWidget(app, nil, settings.Common), + TextWidget: view.NewTextWidget(tviewApp, nil, settings.Common), - app: app, settings: settings, } diff --git a/modules/digitalocean/widget.go b/modules/digitalocean/widget.go index 0ac96702..2431b776 100644 --- a/modules/digitalocean/widget.go +++ b/modules/digitalocean/widget.go @@ -42,11 +42,11 @@ type Widget struct { } // NewWidget creates a new instance of a widget -func NewWidget(app *tview.Application, pages *tview.Pages, settings *Settings) *Widget { +func NewWidget(tviewApp *tview.Application, pages *tview.Pages, settings *Settings) *Widget { widget := Widget{ - ScrollableWidget: view.NewScrollableWidget(app, pages, settings.Common), + ScrollableWidget: view.NewScrollableWidget(tviewApp, pages, settings.Common), - app: app, + app: tviewApp, pages: pages, settings: settings, } diff --git a/modules/docker/widget.go b/modules/docker/widget.go index 8eff70d2..dfb6cc12 100644 --- a/modules/docker/widget.go +++ b/modules/docker/widget.go @@ -16,9 +16,9 @@ type Widget struct { displayBuffer string } -func NewWidget(app *tview.Application, pages *tview.Pages, settings *Settings) *Widget { +func NewWidget(tviewApp *tview.Application, pages *tview.Pages, settings *Settings) *Widget { widget := Widget{ - TextWidget: view.NewTextWidget(app, pages, settings.Common), + TextWidget: view.NewTextWidget(tviewApp, pages, settings.Common), settings: settings, } diff --git a/modules/exchangerates/widget.go b/modules/exchangerates/widget.go index 01dbfb6d..e12d5d51 100644 --- a/modules/exchangerates/widget.go +++ b/modules/exchangerates/widget.go @@ -18,9 +18,9 @@ type Widget struct { err error } -func NewWidget(app *tview.Application, pages *tview.Pages, settings *Settings) *Widget { +func NewWidget(tviewApp *tview.Application, pages *tview.Pages, settings *Settings) *Widget { widget := Widget{ - ScrollableWidget: view.NewScrollableWidget(app, pages, settings.Common), + ScrollableWidget: view.NewScrollableWidget(tviewApp, pages, settings.Common), settings: settings, } diff --git a/modules/feedreader/widget.go b/modules/feedreader/widget.go index 5b934ea6..7a285bd3 100644 --- a/modules/feedreader/widget.go +++ b/modules/feedreader/widget.go @@ -63,9 +63,9 @@ func getShowText(feedItem *FeedItem, showType ShowType) string { } // NewWidget creates a new instance of a widget -func NewWidget(app *tview.Application, pages *tview.Pages, settings *Settings) *Widget { +func NewWidget(tviewApp *tview.Application, pages *tview.Pages, settings *Settings) *Widget { widget := &Widget{ - ScrollableWidget: view.NewScrollableWidget(app, pages, settings.Common), + ScrollableWidget: view.NewScrollableWidget(tviewApp, pages, settings.Common), parser: gofeed.NewParser(), settings: settings, diff --git a/modules/finnhub/widget.go b/modules/finnhub/widget.go index 961144c3..27279ba5 100644 --- a/modules/finnhub/widget.go +++ b/modules/finnhub/widget.go @@ -17,10 +17,10 @@ type Widget struct { } // NewWidget .. -func NewWidget(app *tview.Application, settings *Settings) *Widget { +func NewWidget(tviewApp *tview.Application, settings *Settings) *Widget { widget := Widget{ Client: NewClient(settings.symbols, settings.apiKey), - TextWidget: view.NewTextWidget(app, nil, settings.Common), + TextWidget: view.NewTextWidget(tviewApp, nil, settings.Common), settings: settings, } diff --git a/modules/football/widget.go b/modules/football/widget.go index 52ee6ac5..ccb616f8 100644 --- a/modules/football/widget.go +++ b/modules/football/widget.go @@ -36,7 +36,7 @@ type Widget struct { err error } -func NewWidget(app *tview.Application, pages *tview.Pages, settings *Settings) *Widget { +func NewWidget(tviewApp *tview.Application, pages *tview.Pages, settings *Settings) *Widget { var widget Widget leagueId, err := getLeague(settings.league) @@ -51,7 +51,7 @@ func NewWidget(app *tview.Application, pages *tview.Pages, settings *Settings) * } widget = Widget{ - TextWidget: view.NewTextWidget(app, pages, settings.Common), + TextWidget: view.NewTextWidget(tviewApp, pages, settings.Common), Client: NewClient(settings.apiKey), League: leagueId, settings: settings, diff --git a/modules/gcal/widget.go b/modules/gcal/widget.go index c551cf6e..c2218ebb 100644 --- a/modules/gcal/widget.go +++ b/modules/gcal/widget.go @@ -8,17 +8,17 @@ import ( type Widget struct { view.TextWidget - app *tview.Application calEvents []*CalEvent - settings *Settings err error + settings *Settings + tviewApp *tview.Application } -func NewWidget(app *tview.Application, settings *Settings) *Widget { +func NewWidget(tviewApp *tview.Application, settings *Settings) *Widget { widget := Widget{ - TextWidget: view.NewTextWidget(app, nil, settings.Common), + TextWidget: view.NewTextWidget(tviewApp, nil, settings.Common), - app: app, + tviewApp: tviewApp, settings: settings, } @@ -37,7 +37,7 @@ func (widget *Widget) Refresh() { return } - widget.app.Suspend(widget.authenticate) + widget.tviewApp.Suspend(widget.authenticate) widget.Refresh() } diff --git a/modules/gerrit/widget.go b/modules/gerrit/widget.go index 50525d95..664b1d36 100644 --- a/modules/gerrit/widget.go +++ b/modules/gerrit/widget.go @@ -29,9 +29,9 @@ var ( GerritURLPattern = regexp.MustCompile(`^(http|https)://(.*)$`) ) -func NewWidget(app *tview.Application, pages *tview.Pages, settings *Settings) *Widget { +func NewWidget(tviewApp *tview.Application, pages *tview.Pages, settings *Settings) *Widget { widget := Widget{ - TextWidget: view.NewTextWidget(app, nil, settings.Common), + TextWidget: view.NewTextWidget(tviewApp, nil, settings.Common), Idx: 0, diff --git a/modules/git/widget.go b/modules/git/widget.go index e9b9920c..5e0a9c66 100644 --- a/modules/git/widget.go +++ b/modules/git/widget.go @@ -23,17 +23,17 @@ type Widget struct { GitRepos []*GitRepo - app *tview.Application pages *tview.Pages settings *Settings + tviewApp *tview.Application } -func NewWidget(app *tview.Application, pages *tview.Pages, settings *Settings) *Widget { +func NewWidget(tviewApp *tview.Application, pages *tview.Pages, settings *Settings) *Widget { widget := Widget{ MultiSourceWidget: view.NewMultiSourceWidget(settings.Common, "repository", "repositories"), - TextWidget: view.NewTextWidget(app, pages, settings.Common), + TextWidget: view.NewTextWidget(tviewApp, pages, settings.Common), - app: app, + tviewApp: tviewApp, pages: pages, settings: settings, } @@ -55,7 +55,7 @@ func (widget *Widget) Checkout() { repoToCheckout := widget.GitRepos[widget.Idx] repoToCheckout.checkout(text) widget.pages.RemovePage("modal") - widget.app.SetFocus(widget.View) + widget.tviewApp.SetFocus(widget.View) widget.display() widget.Refresh() } @@ -93,7 +93,7 @@ func (widget *Widget) addButtons(form *tview.Form, checkoutFctn func()) { func (widget *Widget) addCancelButton(form *tview.Form) { cancelFn := func() { widget.pages.RemovePage("modal") - widget.app.SetFocus(widget.View) + widget.tviewApp.SetFocus(widget.View) widget.display() } @@ -102,10 +102,10 @@ func (widget *Widget) addCancelButton(form *tview.Form) { } func (widget *Widget) modalFocus(form *tview.Form) { - widget.app.QueueUpdateDraw(func() { + widget.tviewApp.QueueUpdateDraw(func() { frame := widget.modalFrame(form) widget.pages.AddPage("modal", frame, false, true) - widget.app.SetFocus(frame) + widget.tviewApp.SetFocus(frame) }) } diff --git a/modules/github/widget.go b/modules/github/widget.go index 14ec6f62..a6948197 100644 --- a/modules/github/widget.go +++ b/modules/github/widget.go @@ -23,10 +23,10 @@ type Widget struct { } // NewWidget creates a new instance of the widget -func NewWidget(app *tview.Application, pages *tview.Pages, settings *Settings) *Widget { +func NewWidget(tviewApp *tview.Application, pages *tview.Pages, settings *Settings) *Widget { widget := Widget{ MultiSourceWidget: view.NewMultiSourceWidget(settings.Common, "repository", "repositories"), - TextWidget: view.NewTextWidget(app, pages, settings.Common), + TextWidget: view.NewTextWidget(tviewApp, pages, settings.Common), settings: settings, } diff --git a/modules/gitlab/widget.go b/modules/gitlab/widget.go index fe2cec74..60023322 100644 --- a/modules/gitlab/widget.go +++ b/modules/gitlab/widget.go @@ -29,12 +29,12 @@ type Widget struct { } // NewWidget creates a new instance of the widget -func NewWidget(app *tview.Application, pages *tview.Pages, settings *Settings) *Widget { +func NewWidget(tviewApp *tview.Application, pages *tview.Pages, settings *Settings) *Widget { context, err := newContext(settings) widget := Widget{ MultiSourceWidget: view.NewMultiSourceWidget(settings.Common, "repository", "repositories"), - TextWidget: view.NewTextWidget(app, pages, settings.Common), + TextWidget: view.NewTextWidget(tviewApp, pages, settings.Common), context: context, settings: settings, diff --git a/modules/gitlabtodo/widget.go b/modules/gitlabtodo/widget.go index 8de387be..7800bf13 100644 --- a/modules/gitlabtodo/widget.go +++ b/modules/gitlabtodo/widget.go @@ -18,9 +18,9 @@ type Widget struct { err error } -func NewWidget(app *tview.Application, pages *tview.Pages, settings *Settings) *Widget { +func NewWidget(tviewApp *tview.Application, pages *tview.Pages, settings *Settings) *Widget { widget := &Widget{ - ScrollableWidget: view.NewScrollableWidget(app, pages, settings.Common), + ScrollableWidget: view.NewScrollableWidget(tviewApp, pages, settings.Common), settings: settings, } diff --git a/modules/gitter/widget.go b/modules/gitter/widget.go index 702fc32e..4a74869a 100644 --- a/modules/gitter/widget.go +++ b/modules/gitter/widget.go @@ -17,9 +17,9 @@ type Widget struct { } // NewWidget creates a new instance of a widget -func NewWidget(app *tview.Application, pages *tview.Pages, settings *Settings) *Widget { +func NewWidget(tviewApp *tview.Application, pages *tview.Pages, settings *Settings) *Widget { widget := Widget{ - ScrollableWidget: view.NewScrollableWidget(app, pages, settings.Common), + ScrollableWidget: view.NewScrollableWidget(tviewApp, pages, settings.Common), settings: settings, } diff --git a/modules/googleanalytics/widget.go b/modules/googleanalytics/widget.go index a759bd62..3bd619ae 100644 --- a/modules/googleanalytics/widget.go +++ b/modules/googleanalytics/widget.go @@ -11,9 +11,9 @@ type Widget struct { settings *Settings } -func NewWidget(app *tview.Application, settings *Settings) *Widget { +func NewWidget(tviewApp *tview.Application, settings *Settings) *Widget { widget := Widget{ - TextWidget: view.NewTextWidget(app, nil, settings.Common), + TextWidget: view.NewTextWidget(tviewApp, nil, settings.Common), settings: settings, } diff --git a/modules/grafana/widget.go b/modules/grafana/widget.go index e122d7ab..c0639095 100644 --- a/modules/grafana/widget.go +++ b/modules/grafana/widget.go @@ -20,9 +20,9 @@ type Widget struct { settings *Settings } -func NewWidget(app *tview.Application, pages *tview.Pages, settings *Settings) *Widget { +func NewWidget(tviewApp *tview.Application, pages *tview.Pages, settings *Settings) *Widget { widget := Widget{ - TextWidget: view.NewTextWidget(app, nil, settings.Common), + TextWidget: view.NewTextWidget(tviewApp, nil, settings.Common), Client: NewClient(settings), Selected: -1, diff --git a/modules/gspreadsheets/widget.go b/modules/gspreadsheets/widget.go index 3ff295a3..4c68abad 100644 --- a/modules/gspreadsheets/widget.go +++ b/modules/gspreadsheets/widget.go @@ -17,9 +17,9 @@ type Widget struct { err error } -func NewWidget(app *tview.Application, settings *Settings) *Widget { +func NewWidget(tviewApp *tview.Application, settings *Settings) *Widget { widget := Widget{ - TextWidget: view.NewTextWidget(app, nil, settings.Common), + TextWidget: view.NewTextWidget(tviewApp, nil, settings.Common), settings: settings, } diff --git a/modules/hackernews/widget.go b/modules/hackernews/widget.go index 918430b3..29446ac6 100644 --- a/modules/hackernews/widget.go +++ b/modules/hackernews/widget.go @@ -18,9 +18,9 @@ type Widget struct { err error } -func NewWidget(app *tview.Application, pages *tview.Pages, settings *Settings) *Widget { +func NewWidget(tviewApp *tview.Application, pages *tview.Pages, settings *Settings) *Widget { widget := &Widget{ - ScrollableWidget: view.NewScrollableWidget(app, pages, settings.Common), + ScrollableWidget: view.NewScrollableWidget(tviewApp, pages, settings.Common), settings: settings, } diff --git a/modules/hibp/widget.go b/modules/hibp/widget.go index 9cf6bfaf..86d2635a 100644 --- a/modules/hibp/widget.go +++ b/modules/hibp/widget.go @@ -17,9 +17,9 @@ type Widget struct { } // NewWidget creates a new instance of a widget -func NewWidget(app *tview.Application, settings *Settings) *Widget { +func NewWidget(tviewApp *tview.Application, settings *Settings) *Widget { widget := &Widget{ - TextWidget: view.NewTextWidget(app, nil, settings.Common), + TextWidget: view.NewTextWidget(tviewApp, nil, settings.Common), settings: settings, } diff --git a/modules/ipaddresses/ipapi/widget.go b/modules/ipaddresses/ipapi/widget.go index 89a58368..f27a9ac5 100644 --- a/modules/ipaddresses/ipapi/widget.go +++ b/modules/ipaddresses/ipapi/widget.go @@ -36,9 +36,9 @@ type ipinfo struct { } // NewWidget constructor -func NewWidget(app *tview.Application, settings *Settings) *Widget { +func NewWidget(tviewApp *tview.Application, settings *Settings) *Widget { widget := Widget{ - TextWidget: view.NewTextWidget(app, nil, settings.Common), + TextWidget: view.NewTextWidget(tviewApp, nil, settings.Common), settings: settings, } diff --git a/modules/ipaddresses/ipinfo/widget.go b/modules/ipaddresses/ipinfo/widget.go index 86f4cbd9..4c167078 100644 --- a/modules/ipaddresses/ipinfo/widget.go +++ b/modules/ipaddresses/ipinfo/widget.go @@ -30,9 +30,9 @@ type ipinfo struct { Organization string `json:"org"` } -func NewWidget(app *tview.Application, settings *Settings) *Widget { +func NewWidget(tviewApp *tview.Application, settings *Settings) *Widget { widget := Widget{ - TextWidget: view.NewTextWidget(app, nil, settings.Common), + TextWidget: view.NewTextWidget(tviewApp, nil, settings.Common), settings: settings, } diff --git a/modules/jenkins/widget.go b/modules/jenkins/widget.go index e49c4c5a..f2c019df 100644 --- a/modules/jenkins/widget.go +++ b/modules/jenkins/widget.go @@ -17,9 +17,9 @@ type Widget struct { err error } -func NewWidget(app *tview.Application, pages *tview.Pages, settings *Settings) *Widget { +func NewWidget(tviewApp *tview.Application, pages *tview.Pages, settings *Settings) *Widget { widget := Widget{ - ScrollableWidget: view.NewScrollableWidget(app, pages, settings.Common), + ScrollableWidget: view.NewScrollableWidget(tviewApp, pages, settings.Common), settings: settings, } diff --git a/modules/jira/widget.go b/modules/jira/widget.go index 7c7dd9e3..0f046815 100644 --- a/modules/jira/widget.go +++ b/modules/jira/widget.go @@ -16,9 +16,9 @@ type Widget struct { err error } -func NewWidget(app *tview.Application, pages *tview.Pages, settings *Settings) *Widget { +func NewWidget(tviewApp *tview.Application, pages *tview.Pages, settings *Settings) *Widget { widget := Widget{ - ScrollableWidget: view.NewScrollableWidget(app, pages, settings.Common), + ScrollableWidget: view.NewScrollableWidget(tviewApp, pages, settings.Common), settings: settings, } diff --git a/modules/kubernetes/widget.go b/modules/kubernetes/widget.go index 08e37a29..55ad9700 100644 --- a/modules/kubernetes/widget.go +++ b/modules/kubernetes/widget.go @@ -23,9 +23,9 @@ type Widget struct { } // NewWidget creates a new instance of the widget -func NewWidget(app *tview.Application, settings *Settings) *Widget { +func NewWidget(tviewApp *tview.Application, settings *Settings) *Widget { widget := Widget{ - TextWidget: view.NewTextWidget(app, nil, settings.Common), + TextWidget: view.NewTextWidget(tviewApp, nil, settings.Common), objects: settings.objects, title: settings.title, diff --git a/modules/logger/widget.go b/modules/logger/widget.go index ea0fdd25..bced4663 100644 --- a/modules/logger/widget.go +++ b/modules/logger/widget.go @@ -17,16 +17,14 @@ const ( type Widget struct { view.TextWidget - app *tview.Application filePath string settings *Settings } -func NewWidget(app *tview.Application, settings *Settings) *Widget { +func NewWidget(tviewApp *tview.Application, settings *Settings) *Widget { widget := Widget{ - TextWidget: view.NewTextWidget(app, nil, settings.Common), + TextWidget: view.NewTextWidget(tviewApp, nil, settings.Common), - app: app, filePath: log.LogFilePath(), settings: settings, } diff --git a/modules/mercurial/widget.go b/modules/mercurial/widget.go index 74c3c688..89c636d2 100644 --- a/modules/mercurial/widget.go +++ b/modules/mercurial/widget.go @@ -18,19 +18,19 @@ type Widget struct { view.MultiSourceWidget view.TextWidget - app *tview.Application Data []*MercurialRepo pages *tview.Pages settings *Settings + tviewApp *tview.Application } // NewWidget creates a new instance of a widget -func NewWidget(app *tview.Application, pages *tview.Pages, settings *Settings) *Widget { +func NewWidget(tviewApp *tview.Application, pages *tview.Pages, settings *Settings) *Widget { widget := Widget{ MultiSourceWidget: view.NewMultiSourceWidget(settings.Common, "repository", "repositories"), - TextWidget: view.NewTextWidget(app, pages, settings.Common), + TextWidget: view.NewTextWidget(tviewApp, pages, settings.Common), - app: app, + tviewApp: tviewApp, pages: pages, settings: settings, } @@ -52,7 +52,7 @@ func (widget *Widget) Checkout() { repoToCheckout := widget.Data[widget.Idx] repoToCheckout.checkout(text) widget.pages.RemovePage("modal") - widget.app.SetFocus(widget.View) + widget.tviewApp.SetFocus(widget.View) widget.display() @@ -91,7 +91,7 @@ func (widget *Widget) addButtons(form *tview.Form, checkoutFctn func()) { func (widget *Widget) addCancelButton(form *tview.Form) { cancelFn := func() { widget.pages.RemovePage("modal") - widget.app.SetFocus(widget.View) + widget.tviewApp.SetFocus(widget.View) widget.display() } @@ -100,10 +100,10 @@ func (widget *Widget) addCancelButton(form *tview.Form) { } func (widget *Widget) modalFocus(form *tview.Form) { - widget.app.QueueUpdateDraw(func() { + widget.tviewApp.QueueUpdateDraw(func() { frame := widget.modalFrame(form) widget.pages.AddPage("modal", frame, false, true) - widget.app.SetFocus(frame) + widget.tviewApp.SetFocus(frame) }) } diff --git a/modules/nbascore/widget.go b/modules/nbascore/widget.go index 215510b9..0d3e6fbc 100644 --- a/modules/nbascore/widget.go +++ b/modules/nbascore/widget.go @@ -24,9 +24,9 @@ type Widget struct { } // NewWidget creates a new instance of a widget -func NewWidget(app *tview.Application, pages *tview.Pages, settings *Settings) *Widget { +func NewWidget(tviewApp *tview.Application, pages *tview.Pages, settings *Settings) *Widget { widget := Widget{ - TextWidget: view.NewTextWidget(app, pages, settings.Common), + TextWidget: view.NewTextWidget(tviewApp, pages, settings.Common), settings: settings, } diff --git a/modules/newrelic/widget.go b/modules/newrelic/widget.go index 75b8bbf6..4080ee16 100644 --- a/modules/newrelic/widget.go +++ b/modules/newrelic/widget.go @@ -17,10 +17,10 @@ type Widget struct { settings *Settings } -func NewWidget(app *tview.Application, pages *tview.Pages, settings *Settings) *Widget { +func NewWidget(tviewApp *tview.Application, pages *tview.Pages, settings *Settings) *Widget { widget := Widget{ MultiSourceWidget: view.NewMultiSourceWidget(settings.Common, "applicationID", "applicationIDs"), - TextWidget: view.NewTextWidget(app, pages, settings.Common), + TextWidget: view.NewTextWidget(tviewApp, pages, settings.Common), settings: settings, } diff --git a/modules/opsgenie/widget.go b/modules/opsgenie/widget.go index f389fbed..11746b2b 100644 --- a/modules/opsgenie/widget.go +++ b/modules/opsgenie/widget.go @@ -15,9 +15,9 @@ type Widget struct { settings *Settings } -func NewWidget(app *tview.Application, settings *Settings) *Widget { +func NewWidget(tviewApp *tview.Application, settings *Settings) *Widget { widget := Widget{ - TextWidget: view.NewTextWidget(app, nil, settings.Common), + TextWidget: view.NewTextWidget(tviewApp, nil, settings.Common), settings: settings, } diff --git a/modules/pagerduty/widget.go b/modules/pagerduty/widget.go index bbac2d1b..e657956d 100644 --- a/modules/pagerduty/widget.go +++ b/modules/pagerduty/widget.go @@ -23,9 +23,9 @@ type Widget struct { } // NewWidget creates and returns an instance of PagerDuty widget -func NewWidget(app *tview.Application, settings *Settings) *Widget { +func NewWidget(tviewApp *tview.Application, settings *Settings) *Widget { widget := Widget{ - TextWidget: view.NewTextWidget(app, nil, settings.Common), + TextWidget: view.NewTextWidget(tviewApp, nil, settings.Common), settings: settings, } diff --git a/modules/pihole/widget.go b/modules/pihole/widget.go index 64a4dd3c..1211caa2 100644 --- a/modules/pihole/widget.go +++ b/modules/pihole/widget.go @@ -15,10 +15,9 @@ type Widget struct { } // NewWidget creates a new instance of a widget -//func NewWidget(app *tview.Application, settings *Settings) *Widget { -func NewWidget(app *tview.Application, pages *tview.Pages, settings *Settings) *Widget { +func NewWidget(tviewApp *tview.Application, pages *tview.Pages, settings *Settings) *Widget { widget := Widget{ - TextWidget: view.NewTextWidget(app, nil, settings.Common), + TextWidget: view.NewTextWidget(tviewApp, nil, settings.Common), settings: settings, } diff --git a/modules/pocket/widget.go b/modules/pocket/widget.go index 4bb79437..050cb751 100644 --- a/modules/pocket/widget.go +++ b/modules/pocket/widget.go @@ -21,9 +21,9 @@ type Widget struct { archivedView bool } -func NewWidget(app *tview.Application, pages *tview.Pages, settings *Settings) *Widget { +func NewWidget(tviewApp *tview.Application, pages *tview.Pages, settings *Settings) *Widget { widget := Widget{ - ScrollableWidget: view.NewScrollableWidget(app, nil, settings.Common), + ScrollableWidget: view.NewScrollableWidget(tviewApp, nil, settings.Common), settings: settings, client: NewClient(settings.consumerKey, "http://localhost"), archivedView: false, diff --git a/modules/power/widget.go b/modules/power/widget.go index 8e7c093a..3fbfe536 100644 --- a/modules/power/widget.go +++ b/modules/power/widget.go @@ -15,9 +15,9 @@ type Widget struct { settings *Settings } -func NewWidget(app *tview.Application, settings *Settings) *Widget { +func NewWidget(tviewApp *tview.Application, settings *Settings) *Widget { widget := Widget{ - TextWidget: view.NewTextWidget(app, nil, settings.Common), + TextWidget: view.NewTextWidget(tviewApp, nil, settings.Common), Battery: NewBattery(), diff --git a/modules/resourceusage/widget.go b/modules/resourceusage/widget.go index a3ac69a6..23d9fdf9 100644 --- a/modules/resourceusage/widget.go +++ b/modules/resourceusage/widget.go @@ -14,18 +14,17 @@ import ( // Widget define wtf widget to register widget later type Widget struct { - view.BarGraph - - app *tview.Application settings *Settings + tviewApp *tview.Application + view.BarGraph } // NewWidget Make new instance of widget -func NewWidget(app *tview.Application, settings *Settings) *Widget { +func NewWidget(tviewApp *tview.Application, settings *Settings) *Widget { widget := Widget{ - BarGraph: view.NewBarGraph(app, settings.Name, settings.Common), + BarGraph: view.NewBarGraph(tviewApp, settings.Name, settings.Common), - app: app, + tviewApp: tviewApp, settings: settings, } @@ -131,7 +130,7 @@ func (widget *Widget) Refresh() { return } - widget.app.QueueUpdateDraw(func() { + widget.tviewApp.QueueUpdateDraw(func() { widget.View.Clear() display(widget) }) diff --git a/modules/rollbar/widget.go b/modules/rollbar/widget.go index b4e9d535..b3448264 100644 --- a/modules/rollbar/widget.go +++ b/modules/rollbar/widget.go @@ -18,9 +18,9 @@ type Widget struct { } // NewWidget creates a new instance of a widget -func NewWidget(app *tview.Application, pages *tview.Pages, settings *Settings) *Widget { +func NewWidget(tviewApp *tview.Application, pages *tview.Pages, settings *Settings) *Widget { widget := Widget{ - ScrollableWidget: view.NewScrollableWidget(app, pages, settings.Common), + ScrollableWidget: view.NewScrollableWidget(tviewApp, pages, settings.Common), settings: settings, } diff --git a/modules/security/widget.go b/modules/security/widget.go index 7c90b1f9..9ed832cc 100644 --- a/modules/security/widget.go +++ b/modules/security/widget.go @@ -14,9 +14,9 @@ type Widget struct { settings *Settings } -func NewWidget(app *tview.Application, settings *Settings) *Widget { +func NewWidget(tviewApp *tview.Application, settings *Settings) *Widget { widget := Widget{ - TextWidget: view.NewTextWidget(app, nil, settings.Common), + TextWidget: view.NewTextWidget(tviewApp, nil, settings.Common), settings: settings, } diff --git a/modules/spacex/widget.go b/modules/spacex/widget.go index 0be388f6..4a90a7ae 100644 --- a/modules/spacex/widget.go +++ b/modules/spacex/widget.go @@ -15,9 +15,9 @@ type Widget struct { err error } -func NewWidget(app *tview.Application, settings *Settings) *Widget { +func NewWidget(tviewApp *tview.Application, settings *Settings) *Widget { widget := &Widget{ - TextWidget: view.NewTextWidget(app, nil, settings.Common), + TextWidget: view.NewTextWidget(tviewApp, nil, settings.Common), settings: settings, } return widget diff --git a/modules/spotify/widget.go b/modules/spotify/widget.go index 99e13677..c2253da5 100644 --- a/modules/spotify/widget.go +++ b/modules/spotify/widget.go @@ -19,9 +19,9 @@ type Widget struct { } // NewWidget creates a new instance of a widget -func NewWidget(app *tview.Application, pages *tview.Pages, settings *Settings) *Widget { +func NewWidget(tviewApp *tview.Application, pages *tview.Pages, settings *Settings) *Widget { widget := Widget{ - TextWidget: view.NewTextWidget(app, pages, settings.Common), + TextWidget: view.NewTextWidget(tviewApp, pages, settings.Common), Info: spotigopher.Info{}, client: spotigopher.NewClient(), diff --git a/modules/spotifyweb/widget.go b/modules/spotifyweb/widget.go index 24243644..6c5add0a 100644 --- a/modules/spotifyweb/widget.go +++ b/modules/spotifyweb/widget.go @@ -60,7 +60,7 @@ func authHandler(w http.ResponseWriter, r *http.Request) { } // NewWidget creates a new widget for WTF -func NewWidget(app *tview.Application, pages *tview.Pages, settings *Settings) *Widget { +func NewWidget(tviewApp *tview.Application, pages *tview.Pages, settings *Settings) *Widget { redirectURI = "http://localhost:" + settings.callbackPort + "/callback" auth = spotify.NewAuthenticator(redirectURI, spotify.ScopeUserReadCurrentlyPlaying, spotify.ScopeUserReadPlaybackState, spotify.ScopeUserModifyPlaybackState) @@ -71,7 +71,7 @@ func NewWidget(app *tview.Application, pages *tview.Pages, settings *Settings) * var playerState *spotify.PlayerState widget := Widget{ - TextWidget: view.NewTextWidget(app, pages, settings.Common), + TextWidget: view.NewTextWidget(tviewApp, pages, settings.Common), Info: Info{}, diff --git a/modules/status/widget.go b/modules/status/widget.go index 7c8a193f..7bc58f29 100644 --- a/modules/status/widget.go +++ b/modules/status/widget.go @@ -13,9 +13,9 @@ type Widget struct { settings *Settings } -func NewWidget(app *tview.Application, settings *Settings) *Widget { +func NewWidget(tviewApp *tview.Application, settings *Settings) *Widget { widget := Widget{ - TextWidget: view.NewTextWidget(app, nil, settings.Common), + TextWidget: view.NewTextWidget(tviewApp, nil, settings.Common), CurrentIcon: 0, diff --git a/modules/subreddit/widget.go b/modules/subreddit/widget.go index 6254d04d..4841208e 100644 --- a/modules/subreddit/widget.go +++ b/modules/subreddit/widget.go @@ -16,9 +16,9 @@ type Widget struct { links []Link } -func NewWidget(app *tview.Application, pages *tview.Pages, settings *Settings) *Widget { +func NewWidget(tviewApp *tview.Application, pages *tview.Pages, settings *Settings) *Widget { widget := &Widget{ - ScrollableWidget: view.NewScrollableWidget(app, pages, settings.Common), + ScrollableWidget: view.NewScrollableWidget(tviewApp, pages, settings.Common), settings: settings, } diff --git a/modules/system/widget.go b/modules/system/widget.go index fb934a43..44027769 100644 --- a/modules/system/widget.go +++ b/modules/system/widget.go @@ -19,9 +19,9 @@ type Widget struct { systemInfo *SystemInfo } -func NewWidget(app *tview.Application, date, version string, settings *Settings) *Widget { +func NewWidget(tviewApp *tview.Application, date, version string, settings *Settings) *Widget { widget := Widget{ - TextWidget: view.NewTextWidget(app, nil, settings.Common), + TextWidget: view.NewTextWidget(tviewApp, nil, settings.Common), Date: date, diff --git a/modules/textfile/widget.go b/modules/textfile/widget.go index 169c2f78..b25fd9cc 100644 --- a/modules/textfile/widget.go +++ b/modules/textfile/widget.go @@ -29,10 +29,10 @@ type Widget struct { } // NewWidget creates a new instance of a widget -func NewWidget(app *tview.Application, pages *tview.Pages, settings *Settings) *Widget { +func NewWidget(tviewApp *tview.Application, pages *tview.Pages, settings *Settings) *Widget { widget := Widget{ MultiSourceWidget: view.NewMultiSourceWidget(settings.Common, "filePath", "filePaths"), - TextWidget: view.NewTextWidget(app, pages, settings.Common), + TextWidget: view.NewTextWidget(tviewApp, pages, settings.Common), settings: settings, } diff --git a/modules/todo/widget.go b/modules/todo/widget.go index 6e894ac0..cccbff83 100644 --- a/modules/todo/widget.go +++ b/modules/todo/widget.go @@ -22,21 +22,20 @@ const ( // A Widget represents a Todo widget type Widget struct { - view.ScrollableWidget - - app *tview.Application filePath string list checklist.Checklist pages *tview.Pages settings *Settings + tviewApp *tview.Application + view.ScrollableWidget } // NewWidget creates a new instance of a widget -func NewWidget(app *tview.Application, pages *tview.Pages, settings *Settings) *Widget { +func NewWidget(tviewApp *tview.Application, pages *tview.Pages, settings *Settings) *Widget { widget := Widget{ - ScrollableWidget: view.NewScrollableWidget(app, pages, settings.Common), + ScrollableWidget: view.NewScrollableWidget(tviewApp, pages, settings.Common), - app: app, + tviewApp: tviewApp, settings: settings, filePath: settings.filePath, list: checklist.NewChecklist(settings.Sigils.Checkbox.Checked, settings.Sigils.Checkbox.Unchecked), @@ -117,15 +116,15 @@ func (widget *Widget) newItem() { widget.SetItemCount(len(widget.list.Items)) widget.persist() widget.pages.RemovePage("modal") - widget.app.SetFocus(widget.View) + widget.tviewApp.SetFocus(widget.View) widget.display() } widget.addButtons(form, saveFctn) widget.modalFocus(form) - widget.app.QueueUpdate(func() { - widget.app.Draw() + widget.tviewApp.QueueUpdate(func() { + widget.tviewApp.Draw() }) } @@ -166,15 +165,15 @@ func (widget *Widget) updateSelected() { widget.updateSelectedItem(text) widget.persist() widget.pages.RemovePage("modal") - widget.app.SetFocus(widget.View) + widget.tviewApp.SetFocus(widget.View) widget.display() } widget.addButtons(form, saveFctn) widget.modalFocus(form) - widget.app.QueueUpdate(func() { - widget.app.Draw() + widget.tviewApp.QueueUpdate(func() { + widget.tviewApp.Draw() }) } @@ -198,7 +197,7 @@ func (widget *Widget) addButtons(form *tview.Form, saveFctn func()) { func (widget *Widget) addCancelButton(form *tview.Form) { cancelFn := func() { widget.pages.RemovePage("modal") - widget.app.SetFocus(widget.View) + widget.tviewApp.SetFocus(widget.View) widget.display() } @@ -211,10 +210,10 @@ func (widget *Widget) addSaveButton(form *tview.Form, fctn func()) { } func (widget *Widget) modalFocus(form *tview.Form) { - widget.app.QueueUpdateDraw(func() { + widget.tviewApp.QueueUpdateDraw(func() { frame := widget.modalFrame(form) widget.pages.AddPage("modal", frame, false, true) - widget.app.SetFocus(frame) + widget.tviewApp.SetFocus(frame) }) } diff --git a/modules/todo_plus/widget.go b/modules/todo_plus/widget.go index 7796af12..bb260333 100644 --- a/modules/todo_plus/widget.go +++ b/modules/todo_plus/widget.go @@ -19,10 +19,10 @@ type Widget struct { } // NewWidget creates a new instance of a widget -func NewWidget(app *tview.Application, pages *tview.Pages, settings *Settings) *Widget { +func NewWidget(tviewApp *tview.Application, pages *tview.Pages, settings *Settings) *Widget { widget := Widget{ MultiSourceWidget: view.NewMultiSourceWidget(settings.Common, "project", "projects"), - ScrollableWidget: view.NewScrollableWidget(app, pages, settings.Common), + ScrollableWidget: view.NewScrollableWidget(tviewApp, pages, settings.Common), settings: settings, } diff --git a/modules/transmission/widget.go b/modules/transmission/widget.go index 4a68e528..a33935a9 100644 --- a/modules/transmission/widget.go +++ b/modules/transmission/widget.go @@ -21,9 +21,9 @@ type Widget struct { } // NewWidget creates a new instance of a widget -func NewWidget(app *tview.Application, pages *tview.Pages, settings *Settings) *Widget { +func NewWidget(tviewApp *tview.Application, pages *tview.Pages, settings *Settings) *Widget { widget := Widget{ - ScrollableWidget: view.NewScrollableWidget(app, pages, settings.Common), + ScrollableWidget: view.NewScrollableWidget(tviewApp, pages, settings.Common), settings: settings, } diff --git a/modules/travisci/widget.go b/modules/travisci/widget.go index 74b7dba7..0872f974 100644 --- a/modules/travisci/widget.go +++ b/modules/travisci/widget.go @@ -17,9 +17,9 @@ type Widget struct { err error } -func NewWidget(app *tview.Application, pages *tview.Pages, settings *Settings) *Widget { +func NewWidget(tviewApp *tview.Application, pages *tview.Pages, settings *Settings) *Widget { widget := Widget{ - ScrollableWidget: view.NewScrollableWidget(app, pages, settings.Common), + ScrollableWidget: view.NewScrollableWidget(tviewApp, pages, settings.Common), settings: settings, } diff --git a/modules/twitch/widget.go b/modules/twitch/widget.go index 1a3b980a..54000ff1 100644 --- a/modules/twitch/widget.go +++ b/modules/twitch/widget.go @@ -27,9 +27,9 @@ type Stream struct { Title string } -func NewWidget(app *tview.Application, pages *tview.Pages, settings *Settings) *Widget { +func NewWidget(tviewApp *tview.Application, pages *tview.Pages, settings *Settings) *Widget { widget := &Widget{ - ScrollableWidget: view.NewScrollableWidget(app, pages, settings.Common), + ScrollableWidget: view.NewScrollableWidget(tviewApp, pages, settings.Common), settings: settings, twitch: NewClient(settings.clientId), } diff --git a/modules/twitter/widget.go b/modules/twitter/widget.go index bbe029d3..97a4fcef 100644 --- a/modules/twitter/widget.go +++ b/modules/twitter/widget.go @@ -20,10 +20,10 @@ type Widget struct { settings *Settings } -func NewWidget(app *tview.Application, pages *tview.Pages, settings *Settings) *Widget { +func NewWidget(tviewApp *tview.Application, pages *tview.Pages, settings *Settings) *Widget { widget := Widget{ MultiSourceWidget: view.NewMultiSourceWidget(settings.Common, "screenName", "screenNames"), - TextWidget: view.NewTextWidget(app, pages, settings.Common), + TextWidget: view.NewTextWidget(tviewApp, pages, settings.Common), idx: 0, settings: settings, diff --git a/modules/twitterstats/widget.go b/modules/twitterstats/widget.go index f1e8ff81..b8c5d659 100644 --- a/modules/twitterstats/widget.go +++ b/modules/twitterstats/widget.go @@ -14,9 +14,9 @@ type Widget struct { settings *Settings } -func NewWidget(app *tview.Application, pages *tview.Pages, settings *Settings) *Widget { +func NewWidget(tviewApp *tview.Application, pages *tview.Pages, settings *Settings) *Widget { widget := Widget{ - TextWidget: view.NewTextWidget(app, nil, settings.Common), + TextWidget: view.NewTextWidget(tviewApp, nil, settings.Common), client: NewClient(settings), settings: settings, diff --git a/modules/unknown/widget.go b/modules/unknown/widget.go index 3446c708..88fb00f1 100644 --- a/modules/unknown/widget.go +++ b/modules/unknown/widget.go @@ -13,9 +13,9 @@ type Widget struct { settings *Settings } -func NewWidget(app *tview.Application, settings *Settings) *Widget { +func NewWidget(tviewApp *tview.Application, settings *Settings) *Widget { widget := Widget{ - TextWidget: view.NewTextWidget(app, nil, settings.Common), + TextWidget: view.NewTextWidget(tviewApp, nil, settings.Common), settings: settings, } diff --git a/modules/uptimerobot/widget.go b/modules/uptimerobot/widget.go index 832e1b41..9d3d4266 100644 --- a/modules/uptimerobot/widget.go +++ b/modules/uptimerobot/widget.go @@ -21,9 +21,9 @@ type Widget struct { err error } -func NewWidget(app *tview.Application, pages *tview.Pages, settings *Settings) *Widget { +func NewWidget(tviewApp *tview.Application, pages *tview.Pages, settings *Settings) *Widget { widget := &Widget{ - ScrollableWidget: view.NewScrollableWidget(app, pages, settings.Common), + ScrollableWidget: view.NewScrollableWidget(tviewApp, pages, settings.Common), settings: settings, } diff --git a/modules/victorops/widget.go b/modules/victorops/widget.go index 9b7e53b4..c6624c7f 100644 --- a/modules/victorops/widget.go +++ b/modules/victorops/widget.go @@ -17,9 +17,9 @@ type Widget struct { } // NewWidget creates a new widget -func NewWidget(app *tview.Application, settings *Settings) *Widget { +func NewWidget(tviewApp *tview.Application, settings *Settings) *Widget { widget := Widget{ - TextWidget: view.NewTextWidget(app, nil, settings.Common), + TextWidget: view.NewTextWidget(tviewApp, nil, settings.Common), settings: settings, } diff --git a/modules/weatherservices/arpansagovau/widget.go b/modules/weatherservices/arpansagovau/widget.go index 26a0aa8e..2251329d 100644 --- a/modules/weatherservices/arpansagovau/widget.go +++ b/modules/weatherservices/arpansagovau/widget.go @@ -15,10 +15,10 @@ type Widget struct { settings *Settings } -func NewWidget(app *tview.Application, settings *Settings) *Widget { +func NewWidget(tviewApp *tview.Application, settings *Settings) *Widget { locationData, err := GetLocationData(settings.city) widget := Widget{ - TextWidget: view.NewTextWidget(app, nil, settings.Common), + TextWidget: view.NewTextWidget(tviewApp, nil, settings.Common), location: locationData, lastError: err, diff --git a/modules/weatherservices/prettyweather/widget.go b/modules/weatherservices/prettyweather/widget.go index 306ab4e5..fa067468 100644 --- a/modules/weatherservices/prettyweather/widget.go +++ b/modules/weatherservices/prettyweather/widget.go @@ -17,9 +17,9 @@ type Widget struct { settings *Settings } -func NewWidget(app *tview.Application, settings *Settings) *Widget { +func NewWidget(tviewApp *tview.Application, settings *Settings) *Widget { widget := Widget{ - TextWidget: view.NewTextWidget(app, nil, settings.Common), + TextWidget: view.NewTextWidget(tviewApp, nil, settings.Common), settings: settings, } diff --git a/modules/weatherservices/weather/widget.go b/modules/weatherservices/weather/widget.go index ab2ae924..37fe6eab 100644 --- a/modules/weatherservices/weather/widget.go +++ b/modules/weatherservices/weather/widget.go @@ -20,10 +20,10 @@ type Widget struct { } // NewWidget creates and returns a new instance of the weather Widget -func NewWidget(app *tview.Application, pages *tview.Pages, settings *Settings) *Widget { +func NewWidget(tviewApp *tview.Application, pages *tview.Pages, settings *Settings) *Widget { widget := Widget{ MultiSourceWidget: view.NewMultiSourceWidget(settings.Common, "cityid", "cityids"), - TextWidget: view.NewTextWidget(app, pages, settings.Common), + TextWidget: view.NewTextWidget(tviewApp, pages, settings.Common), pages: pages, settings: settings, diff --git a/modules/zendesk/widget.go b/modules/zendesk/widget.go index a43c68f0..a6c0c78e 100644 --- a/modules/zendesk/widget.go +++ b/modules/zendesk/widget.go @@ -18,9 +18,9 @@ type Widget struct { } // NewWidget creates a new instance of a widget -func NewWidget(app *tview.Application, pages *tview.Pages, settings *Settings) *Widget { +func NewWidget(tviewApp *tview.Application, pages *tview.Pages, settings *Settings) *Widget { widget := Widget{ - ScrollableWidget: view.NewScrollableWidget(app, pages, settings.Common), + ScrollableWidget: view.NewScrollableWidget(tviewApp, pages, settings.Common), settings: settings, } diff --git a/view/bargraph.go b/view/bargraph.go index 49df2431..42ce1b02 100644 --- a/view/bargraph.go +++ b/view/bargraph.go @@ -30,10 +30,10 @@ type Bar struct { } // NewBarGraph creates and returns an instance of BarGraph -func NewBarGraph(app *tview.Application, name string, commonSettings *cfg.Common) BarGraph { +func NewBarGraph(tviewApp *tview.Application, name string, commonSettings *cfg.Common) BarGraph { widget := BarGraph{ - Base: NewBase(app, commonSettings), - KeyboardWidget: NewKeyboardWidget(app, nil, commonSettings), + Base: NewBase(commonSettings), + KeyboardWidget: NewKeyboardWidget(tviewApp, nil, commonSettings), maxStars: commonSettings.Config.UInt("graphStars", 20), starChar: commonSettings.Config.UString("graphIcon", "|"), diff --git a/view/base.go b/view/base.go index 919c557c..3ba9efe4 100644 --- a/view/base.go +++ b/view/base.go @@ -4,32 +4,29 @@ import ( "fmt" "sync" - "github.com/rivo/tview" "github.com/wtfutil/wtf/cfg" "github.com/wtfutil/wtf/utils" ) type Base struct { - app *tview.Application bordered bool commonSettings *cfg.Common enabled bool + enabledMutex *sync.Mutex focusChar string focusable bool name string quitChan chan bool - refreshing bool refreshInterval int - enabledMutex *sync.Mutex + refreshing bool } // NewBase creates and returns an instance of the Base module, the lowest-level // primitive module from which all others are derived -func NewBase(app *tview.Application, commonSettings *cfg.Common) *Base { +func NewBase(commonSettings *cfg.Common) *Base { base := &Base{ commonSettings: commonSettings, - app: app, bordered: commonSettings.Bordered, enabled: commonSettings.Enabled, enabledMutex: &sync.Mutex{}, diff --git a/view/keyboard_widget.go b/view/keyboard_widget.go index d37c90a3..e27eb8fe 100644 --- a/view/keyboard_widget.go +++ b/view/keyboard_widget.go @@ -19,10 +19,10 @@ type helpItem struct { // KeyboardWidget manages keyboard control for a widget type KeyboardWidget struct { - app *tview.Application pages *tview.Pages - view *tview.TextView settings *cfg.Common + tviewApp *tview.Application + view *tview.TextView charMap map[string]func() keyMap map[tcell.Key]func() @@ -32,9 +32,9 @@ type KeyboardWidget struct { } // NewKeyboardWidget creates and returns a new instance of KeyboardWidget -func NewKeyboardWidget(app *tview.Application, pages *tview.Pages, settings *cfg.Common) *KeyboardWidget { +func NewKeyboardWidget(tviewApp *tview.Application, pages *tview.Pages, settings *cfg.Common) *KeyboardWidget { keyWidget := &KeyboardWidget{ - app: app, + tviewApp: tviewApp, pages: pages, settings: settings, charMap: make(map[string]func()), @@ -168,16 +168,16 @@ func (widget *KeyboardWidget) ShowHelp() { closeFunc := func() { widget.pages.RemovePage("help") - widget.app.SetFocus(widget.view) + widget.tviewApp.SetFocus(widget.view) } modal := NewBillboardModal(widget.HelpText(), closeFunc) widget.pages.AddPage("help", modal, false, true) - widget.app.SetFocus(modal) + widget.tviewApp.SetFocus(modal) - widget.app.QueueUpdate(func() { - widget.app.Draw() + widget.tviewApp.QueueUpdate(func() { + widget.tviewApp.Draw() }) } diff --git a/view/scrollable_widget.go b/view/scrollable_widget.go index 57fe816e..9080c39e 100644 --- a/view/scrollable_widget.go +++ b/view/scrollable_widget.go @@ -15,9 +15,9 @@ type ScrollableWidget struct { RenderFunction func() } -func NewScrollableWidget(app *tview.Application, pages *tview.Pages, commonSettings *cfg.Common) ScrollableWidget { +func NewScrollableWidget(tviewApp *tview.Application, pages *tview.Pages, commonSettings *cfg.Common) ScrollableWidget { widget := ScrollableWidget{ - TextWidget: NewTextWidget(app, pages, commonSettings), + TextWidget: NewTextWidget(tviewApp, pages, commonSettings), } widget.Unselect() @@ -84,7 +84,7 @@ func (widget *ScrollableWidget) Unselect() { func (widget *ScrollableWidget) Redraw(data func() (string, string, bool)) { widget.TextWidget.Redraw(data) - widget.Base.app.QueueUpdateDraw(func() { + widget.tviewApp.QueueUpdateDraw(func() { widget.View.Highlight(strconv.Itoa(widget.Selected)).ScrollToHighlight() }) } diff --git a/view/text_widget.go b/view/text_widget.go index 2414e5b2..7753f43a 100644 --- a/view/text_widget.go +++ b/view/text_widget.go @@ -17,10 +17,10 @@ type TextWidget struct { } // NewTextWidget creates and returns an instance of TextWidget -func NewTextWidget(app *tview.Application, pages *tview.Pages, commonSettings *cfg.Common) TextWidget { +func NewTextWidget(tviewApp *tview.Application, pages *tview.Pages, commonSettings *cfg.Common) TextWidget { widget := TextWidget{ - Base: NewBase(app, commonSettings), - KeyboardWidget: NewKeyboardWidget(app, pages, commonSettings), + Base: NewBase(commonSettings), + KeyboardWidget: NewKeyboardWidget(tviewApp, pages, commonSettings), } widget.View = widget.createView(widget.bordered) @@ -39,7 +39,7 @@ func (widget *TextWidget) TextView() *tview.TextView { } func (widget *TextWidget) Redraw(data func() (string, string, bool)) { - widget.Base.app.QueueUpdateDraw(func() { + widget.tviewApp.QueueUpdateDraw(func() { title, content, wrap := data() widget.View.Clear()