Commit graph

273 commits

Author SHA1 Message Date
suhird.singh
a20fa161cc gui: bind g/G to vim-style top/bottom navigation in the main panel
Pressing 'gg' jumps to the top and 'G' jumps to the bottom of the main panel,
matching vim navigation. The bindings are scoped to the main view so they apply
across all of its tabs (Config, Logs, Env, Stats, Top).
2026-06-24 13:39:42 -04:00
suhird.singh
1a71302f11 gui: add gotoTopMain/gotoBottomMain navigation handlers
Add handlers that scroll the main panel to the top and bottom. gotoTopMain
implements the vim-style "gg" double press (gocui has no native key-sequence
support) by tracking the last 'g' press timestamp in the gui state, while
gotoBottomMain jumps to the final line, honouring the ScrollPastBottom config.

The origin math and double-press timing are factored into pure helpers so they
can be unit tested.
2026-06-24 13:39:16 -04:00
Jesse Duffield
f5ff116af9 Use IsProjectScoped at remaining call sites + add test
Addresses Copilot review comments on PR #797:
- Containers panel title, initial focus selection, and the local-project
  inclusion in getDiscoveredProjects all switched from
  InDockerComposeProject to IsProjectScoped, so they stay consistent
  when -p is given outside a compose dir.
- Adds TestIsProjectScoped table test covering all four combinations.

InDockerComposeProject is still used at the call sites that genuinely
require a compose dir (renderDockerComposeConfig, GetServices).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-19 12:47:30 +10:00
Jesse Duffield
3974f6fec1 Support -p flag and DRY up code 2026-04-19 12:16:55 +10:00
Daniel Dibiasi
b17d474148
Fixed forced project view 2026-04-16 09:23:12 +02:00
copilot-swe-agent[bot]
e3c1c8630a Hide project/services panels when not in a docker-compose project
Co-authored-by: jesseduffield <8456633+jesseduffield@users.noreply.github.com>
2026-03-15 22:26:03 +00:00
Jesse Duffield
26ce871368 Improve projects support 2026-03-15 14:53:48 +11:00
Jesse Duffield
826f0293f1 Fix types 2025-11-14 21:20:28 +11:00
Jesse Duffield
1178381e00
Merge pull request #599 from A11Might/feat-show-panel-number
Show jump panel keybindings in panel titles
2024-12-22 21:37:21 +11:00
kohath
b8a3ca1550 Show jump panel keybindings in panel titles 2024-11-25 21:27:27 +08:00
Clément PÉAU
e2bc42f4bb Merge branch 'master' into feature/issue-522-add-number-like-lazygit 2024-09-02 22:35:05 +02:00
Clément PÉAU
86cce84955 Add navigation via numbers
A la lazygit, we can now navigate between panels using numbers
(1,2,3,4,5,6,7)

Add translation for number navigation

reformat

oops

fix translation case & generate docs

pluralize networks
2024-07-26 15:58:45 +02:00
Sebastiaan van Stijn
77a4de4819
go.mod: github.com/docker/docker, docker/cli v27.0.3
Update to v27.0, and remove uses of deprecated types.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2024-07-15 11:44:09 +02:00
Sebastiaan van Stijn
2d16389add
go.mod: github.com/docker/docker, docker/cli v26.1.4
Update to v26.1, and remove uses of deprecated types.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2024-07-15 11:37:10 +02:00
Sebastiaan van Stijn
0232610967
go.mod: github.com/docker/docker, docker/cli v25.0.5
Update to v25.0, and remove uses of deprecated types.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2024-07-15 11:25:11 +02:00
Jesse Duffield
cdf1d9ad11 Remove loader code for confirmation panel
It wasn't being used and if it were to be used, there would be a memory
leak
2024-05-26 14:04:25 +10:00
Jesse Duffield
968b09e6c4 Bump gocui 2024-05-26 14:00:53 +10:00
Jesse Duffield
2729aafe2c Default to rounded corners 2024-05-26 13:52:34 +10:00
Jesse Duffield
ce780b8f6d
Merge pull request #529 from scottmckendry/master
feat: add 'border' option in config
2024-05-26 13:50:55 +10:00
Jesse Duffield
630ea7d324 Fix issue where logs were buggy after returning from subprocess
Turns out that upon switching to a subprocess we were cancelling ALL
periodic tasks, which includes re-rendering the main view ever 30ms.
This completely broke our log rendering and meant that it only updated
when an event occurred
2024-05-26 13:02:54 +10:00
Jesse Duffield
8a0fcf99f4 Gracefully handle situation when container details have not yet loaded
This should be very rare but it does happen sometimes
2024-05-26 12:27:01 +10:00
Jesse Duffield
bca15cf6b1 Get container details immediately after getting containers
Previously we separately obtained container details every second,
meaning there was a second of not knowing whether a given container was
using a TTY or not, and that meant we were using the wrong streaming
method for logs, which led to a black screen.
2024-05-26 12:19:17 +10:00
Jesse Duffield
a6ade7e78d Close stream when done with it
We should have been doing this from the start. Potential cause of a
memory leak?
2024-05-26 11:34:05 +10:00
Scott McKendry
dbf2bced5e feat: support for different border styles 2024-05-07 07:11:10 +12:00
Jesse Duffield
2dda39dff0 Appease linter 2023-10-10 17:39:09 +11:00
Miguel Figueira Ferraz
50582db9b7
feat(i18n): 🌐 Portuguese translation (#479)
Co-authored-by: Jesse Duffield <jessedduffield@gmail.com>
2023-09-19 22:44:27 +10:00
Luka Markušić
937a6a9c93
Re-enable custom command template application (#470) 2023-08-03 20:38:53 +10:00
tiagovla
454eaee2cf
feat: add selectedLineBgColor theme customization (#420) 2023-07-21 18:31:27 +10:00
Martin Cross
dffe6970aa
Short status (#419)
Co-authored-by: Martin Cross <martinidc1992@gmail.com>
2023-07-21 18:22:18 +10:00
Rdkang
07f26c1e91
Allow setting default screenMode (#421) 2023-07-21 18:08:21 +10:00
Jesse Duffield
e5ca391291
287 Display hotkeys to detach from the container (#465)
Co-authored-by: glendsoza <glendsouza23@gmail.com>
2023-07-21 17:47:00 +10:00
Tony Soloveyv
2a9ed70896
Allow to render container stats and configs both in json and yaml (#444) 2023-05-21 14:06:56 +10:00
Tony-Sol
ce95ddea2a
Add networks panel 2023-03-06 01:25:23 +03:00
Gustavo Andrioli
d77b895319 Wrap custom commands on shell 2022-12-01 19:04:29 +11:00
Jesse Duffield
821cd81b72 allow configuring number of logs to tail 2022-11-23 20:58:35 +11:00
Jesse Duffield
b0cef73dc1 hide underscores on VSCode integrated terminal while they're glitchy 2022-11-15 19:44:26 +11:00
Jesse Duffield
3e2a3e608a update cheatsheet 2022-11-10 20:13:41 +11:00
Jesse Duffield
b7fea7a44d separate quit and close options 2022-11-10 19:45:32 +11:00
Jesse Duffield
d1ccf11502 small refactor 2022-11-10 19:42:02 +11:00
Jesse Duffield
b0241c79db use context instead of struct channel 2022-11-10 19:38:49 +11:00
Jesse Duffield
7f38cf2ab2 fix some things 2022-11-10 19:27:28 +11:00
Jesse Duffield
52040d1d99 better way of rendering to the main view 2022-11-10 19:14:12 +11:00
Jesse Duffield
5ffbeae3e8 preparing to refactor main render functions 2022-11-09 21:21:36 +11:00
Jesse Duffield
7324254414 better name: GetTableCells 2022-11-09 21:21:36 +11:00
Jesse Duffield
d6ad538426 refactor side list panel some more 2022-11-09 21:21:36 +11:00
Jesse Duffield
02a03ed18d move container stats stuff into presentation layer 2022-11-09 21:21:36 +11:00
Jesse Duffield
a87b698761 move things into presentation package 2022-11-09 21:21:36 +11:00
Jesse Duffield
fc592b5806 more refactoring of list panels 2022-11-09 21:21:36 +11:00
Jesse Duffield
5d498c796a move context stuff into its own struct 2022-11-09 21:21:36 +11:00
Jesse Duffield
c6d424e4a4 show loader when filtering 2022-11-09 21:21:36 +11:00