<feed xmlns='http://www.w3.org/2005/Atom'>
<title>sl0pstatus.git/src/widgets/tabs.rs, branch main</title>
<subtitle>zellij status plugin</subtitle>
<id>https://git.sl0p.foo/sl0pstatus.git/atom/src/widgets/tabs.rs?h=main</id>
<link rel='self' href='https://git.sl0p.foo/sl0pstatus.git/atom/src/widgets/tabs.rs?h=main'/>
<link rel='alternate' type='text/html' href='https://git.sl0p.foo/sl0pstatus.git/'/>
<updated>2026-08-08T21:54:38Z</updated>
<entry>
<title>sl0p: double-click a tab to rename it</title>
<updated>2026-08-08T21:54:38Z</updated>
<author>
<name>user</name>
<email>user@clank</email>
</author>
<published>2026-08-08T21:54:38Z</published>
<link rel='alternate' type='text/html' href='https://git.sl0p.foo/sl0pstatus.git/commit/?id=813d4b80658bfb717d93d539019d970b6fbbd1d0'/>
<id>urn:sha1:813d4b80658bfb717d93d539019d970b6fbbd1d0</id>
<content type='text'>
Double-clicking a tab in the bar switches to it and drops into RenameTab mode,
matching the double-click-to-rename we added for panes in the sl0ppij zellij
fork. Enter commits, Esc cancels, exactly as the rename keybind does.

Widgets are held behind &amp;self and cannot keep click state, so double-click
detection lives centrally in ModuleConfig::handle_mouse_action and is passed
to Widget::process_click as a flag.

THE TRAP, and the reason this is not a two-line change:
handle_mouse_action also runs for Mouse::Release. A single click therefore
arrives as LeftClick followed by Release at the SAME position. Counting
releases would make every single click register as a double click, and
resetting on release would mean a real double click never registers at all,
since the release falls between the two clicks. Only LeftClick participates;
Release neither counts nor resets.

A completed pair is consumed, so a triple click does not fire a second rename.

switch_tab_to() is called before switch_to_input_mode(), because RenameTab acts
on the ACTIVE tab - renaming without switching first would rename the wrong one.

Threshold is 400ms, the same one zellij uses for text-selection double clicks,
so the bar feels consistent with the panes.

Detection is extracted as register_click_for_double_click() so it can be tested
without constructing a ModuleConfig. Tests cover: a real double click, the
release-in-between regression, too-slow clicks, clicks at different positions,
and the triple-click case.

Upstream tests still pass: 25 total (20 upstream + 5 new).

Note: this repo's .cargo/config.toml targets wasm32-wasip1 and runs tests under
wasmtime, which is not installed here. Tests are run with
`cargo test --target x86_64-unknown-linux-gnu` instead.
</content>
</entry>
<entry>
<title>feat(tabs): add bell and flashing-bell formats and indicator (#259)</title>
<updated>2026-06-03T18:46:57Z</updated>
<author>
<name>pali</name>
<email>6pali6@gmail.com</email>
</author>
<published>2026-06-03T18:46:57Z</published>
<link rel='alternate' type='text/html' href='https://git.sl0p.foo/sl0pstatus.git/commit/?id=17609e498f88e674b846b844b48ad1dc545fddcf'/>
<id>urn:sha1:17609e498f88e674b846b844b48ad1dc545fddcf</id>
<content type='text'>
</content>
</entry>
<entry>
<title>feat: add {focused_pane_title} to the tab widget formatter (#250)</title>
<updated>2026-06-03T18:28:57Z</updated>
<author>
<name>Yui</name>
<email>yui300127@gmail.com</email>
</author>
<published>2026-06-03T18:28:57Z</published>
<link rel='alternate' type='text/html' href='https://git.sl0p.foo/sl0pstatus.git/commit/?id=0d7246206e7d2110d795e37d80ea14e110912166'/>
<id>urn:sha1:0d7246206e7d2110d795e37d80ea14e110912166</id>
<content type='text'>
</content>
</entry>
<entry>
<title>feat: add zero based tab index support (#249)</title>
<updated>2026-04-18T05:28:55Z</updated>
<author>
<name>Rikard Bergqvist</name>
<email>j10rikardb@gmail.com</email>
</author>
<published>2026-04-18T05:28:55Z</published>
<link rel='alternate' type='text/html' href='https://git.sl0p.foo/sl0pstatus.git/commit/?id=0d7ec6569acee97068d238aa1faa8e19fc8b8a4c'/>
<id>urn:sha1:0d7ec6569acee97068d238aa1faa8e19fc8b8a4c</id>
<content type='text'>
* adds zero based tab index support

* update after comments</content>
</entry>
<entry>
<title>chore: linting issue in tabs widget</title>
<updated>2026-04-11T05:25:19Z</updated>
<author>
<name>Daniel Jankowski</name>
<email>daniel.jankowski@rub.de</email>
</author>
<published>2026-04-11T05:25:19Z</published>
<link rel='alternate' type='text/html' href='https://git.sl0p.foo/sl0pstatus.git/commit/?id=4ef69ff55930373d60f6c85afc39b2494850feeb'/>
<id>urn:sha1:4ef69ff55930373d60f6c85afc39b2494850feeb</id>
<content type='text'>
</content>
</entry>
<entry>
<title>chore(clippy): fix issues</title>
<updated>2025-12-17T19:47:24Z</updated>
<author>
<name>Daniel Jankowski</name>
<email>daniel.jankowski@rub.de</email>
</author>
<published>2025-12-17T19:47:24Z</published>
<link rel='alternate' type='text/html' href='https://git.sl0p.foo/sl0pstatus.git/commit/?id=d886a28f8936333feaeaa3d0f8f615efa07d38e7'/>
<id>urn:sha1:d886a28f8936333feaeaa3d0f8f615efa07d38e7</id>
<content type='text'>
</content>
</entry>
<entry>
<title>chore(deps): update to toolchain 1.86</title>
<updated>2025-04-05T07:34:38Z</updated>
<author>
<name>Daniel Jankowski</name>
<email>daniel.jankowski@rub.de</email>
</author>
<published>2025-04-05T07:34:38Z</published>
<link rel='alternate' type='text/html' href='https://git.sl0p.foo/sl0pstatus.git/commit/?id=387f9515d8c87f538c6f5f4dcdd8f78abcc66c09'/>
<id>urn:sha1:387f9515d8c87f538c6f5f4dcdd8f78abcc66c09</id>
<content type='text'>
</content>
</entry>
<entry>
<title>chore: fix linting issue</title>
<updated>2024-11-30T12:44:21Z</updated>
<author>
<name>Daniel Jankowski</name>
<email>daniel.jankowski@rub.de</email>
</author>
<published>2024-11-30T12:44:21Z</published>
<link rel='alternate' type='text/html' href='https://git.sl0p.foo/sl0pstatus.git/commit/?id=b57833bcef48e89d847e720ab02c4ca4ad6d27d7'/>
<id>urn:sha1:b57833bcef48e89d847e720ab02c4ca4ad6d27d7</id>
<content type='text'>
</content>
</entry>
<entry>
<title>feat(tabs): multiple formats for truncation marker</title>
<updated>2024-08-07T11:43:39Z</updated>
<author>
<name>Daniel Jankowski</name>
<email>daniel.jankowski@rub.de</email>
</author>
<published>2024-08-07T11:43:39Z</published>
<link rel='alternate' type='text/html' href='https://git.sl0p.foo/sl0pstatus.git/commit/?id=b035e274c04227d707baccea2e4e7e3d3e2e323e'/>
<id>urn:sha1:b035e274c04227d707baccea2e4e7e3d3e2e323e</id>
<content type='text'>
</content>
</entry>
<entry>
<title>feat: add color aliases</title>
<updated>2024-07-15T14:16:46Z</updated>
<author>
<name>Daniel Jankowski</name>
<email>daniel.jankowski@rub.de</email>
</author>
<published>2024-07-15T14:16:46Z</published>
<link rel='alternate' type='text/html' href='https://git.sl0p.foo/sl0pstatus.git/commit/?id=68d8d4998547e859527ad7aa7112d09ee74f0fbb'/>
<id>urn:sha1:68d8d4998547e859527ad7aa7112d09ee74f0fbb</id>
<content type='text'>
closes #75
</content>
</entry>
</feed>
