summary refs log tree commit diff stats
path: root/lib/ui/tab.go
Commit message (Collapse)AuthorAgeFilesLines
* Fix tabstrip over-drawing when not enough spaceJeffas2019-07-261-1/+8
| | | | | | | | Tabstrip didn't take into account the width of the context. Now, it just shows as many tabs as can fit and truncates the last one if necessary. In future it probably would be best to ensure that the selected tab is rendered on the screen.
* Fix invalid tab state when deselecting removed tabDrew DeVault2019-07-261-1/+1
|
* Fix :close on terminal panicJeffas2019-07-251-0/+5
| | | | | | | | Executing :close on a terminal would panic due to it already having been removed. This is also related to the fact that removing a tab doesn't check for whether it actually found a tab to remove or not.
* Fix panic when tabs.popHistory is nonexistentDrew DeVault2019-07-251-1/+1
|
* Add change tab commandJeffas2019-07-231-5/+20
| | | | | | | | | | This command allows the user to change tab by giving the tab name. This can be tab completed too. The previous tab is stored in the tabs module so that when a new tab is created it is still possible to go to the previous one. Normal invocation is :ct folder Previous tab is :ct -
* Add clickable tabsJeffas2019-07-111-0/+28
| | | | | | | | | | | This introduces a new interface `Clickable`. I'd imagine this would be implemented for most widgets eventually and would allow for programs run in the terminal to also have their mouse events forwarded to them. For the tabs it was relatively simple to check that the position of the click is within the boxes for the tabs. For other components I'd imagine that some state representing their currently drawn bounding box would be useful.
* lib/ui/tab: Add Replace methodKevin Kuehler2019-06-111-0/+16
| | | | | | Also expose a light wrapper method in aerc.go for tab replacement Signed-off-by: Kevin Kuehler <kkuehler@brave.com>
* Fix #116 0.1.0Drew DeVault2019-06-031-1/+1
|
* Add Tabs historyReto Brunner2019-06-021-4/+34
| | | | Fixes #77: When closing a tab, bring you back to the one you last had focused
* Update tab name as subject changesDrew DeVault2019-05-141-1/+3
| | | | Also moves truncation to the tab widget
* Use tcell.Style.Reverse instead of black on whiteDrew DeVault2019-03-301-9/+3
|
* Add :term-closeDrew DeVault2019-03-171-2/+2
|
* Move exline handling up to aerc, add :termDrew DeVault2019-03-171-3/+5
|
* Implement the Container interface in lib/ui/Drew DeVault2019-01-201-0/+8
|
* refactor lib/ui/tab to ensure staying in boundsMarkus Ongyerth2018-06-131-8/+21
| | | | | | | | Fix a few potential out of bounds by placing proper checks, which should be relevant if all tabs are removed for some reason. Also avoid iterating all tabs in the invalidate handler, since we are only interested in whether it's the selected tab either way
* Fix tab invalidation bugsDrew DeVault2018-06-111-1/+5
|
* Use default color for selected tabDrew DeVault2018-06-071-3/+9
|
* switch to tcell from termboxMarkus Ongyerth2018-06-011-13/+6
| | | | | | | | | | | | | This is a simple mostly straight forward switch to tcell in favor of termbox. It uses the tcell native api (not the compat layer) but does not make use of most features. Further changes should include moving to tcell's views.TextArea and the general built in widget behaviour instead of the current ad hoc implementation. Regression: Cursor isn't shown in ex-line
* Split UI library and widgetsDrew DeVault2018-02-261-0/+115