• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

jzombie / term-wm / 28817147915
75%

Build:
DEFAULT BRANCH: main
Ran 06 Jul 2026 07:23PM UTC
Jobs 1
Files 81
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

06 Jul 2026 07:19PM UTC coverage: 69.488% (+1.0%) from 68.521%
28817147915

push

github

web-flow
refactor(component): Unify component trait, window ownership, and action-based event flow (#83)

* refactor(component): Unify component trait, window ownership, and
action-based event flow

Major architectural refactor that advances the component system toward
the shared Component<T> trait design:

- Generalize Component trait to Component<TermWmAction> with associated
  action type. render() takes &self (immutable) instead of &mut self.
- Add new lifecycle methods: update() for action processing, destroy()
  for cleanup. Replace handle_event returning bool with on_mouse/on_key
  returning EventResult<TermWmAction>, enabling declarative action flow.
- Introduce interior mutability (RefCell/Cell) in TextRendererComponent
  to support immutable render() contract.
- Move component ownership into WindowManager via create_window(Box<dyn
  Component<TermWmAction>>), eliminating the App-level
  BTreeMap<WindowKey,
  ScrollViewComponent<TerminalComponent>> and simplifying lifecycle
  mgmt.
- Bridge WindowKey gap with Arc<Mutex<Option<WindowKey>>> in PTY status
  callbacks so wakeup/exit events can reference the correct window.
- Add HitboxRegistry parameter to render() for hit-testing support.
- Update SelectionViewport trait: selection_viewport() and
  logical_position_from_point() now take area parameter instead of
  using stored content_area.
- Remove WmMenuAction alias; use TermWmAction directly throughout.
- Relocate research docs from .opencode/plans/ to docs/research/.
- Update all examples, integration tests, and downstream components.

* Replace bare subtraction with `checked_sub` call

* Patch doc formatting

* Update comments

* cargo fmt --all

2783 of 4276 new or added lines in 46 files covered. (65.08%)

57 existing lines in 22 files now uncovered.

15409 of 22175 relevant lines covered (69.49%)

167.74 hits per line

Uncovered Changes

Lines Coverage ∆ File
427
74.85
-5.35% crates/term-wm-core/src/window/window_manager/mod.rs
160
42.9
-5.57% crates/term-wm-core/src/runner.rs
108
79.03
14.69% crates/term-wm-ui-components/src/terminal.rs
74
0.0
0.0% src/main.rs
73
83.55
-4.45% crates/term-wm-ui-components/src/scroll_view.rs
70
19.59
5.3% crates/term-wm-core/src/actions.rs
62
1.03
-0.17% crates/term-wm-core/src/window/window_manager/overlays.rs
57
40.34
3.19% crates/term-wm-core/src/components/mod.rs
49
0.0
crates/term-wm-core/src/io/console_render_target.rs
42
68.08
-5.82% crates/term-wm-sys-ui-components/src/wm_help_overlay.rs
34
43.4
-1.28% crates/term-wm-ui-components/src/confirm_overlay.rs
31
51.9
-3.32% crates/term-wm-sys-ui-components/src/wm_bottom_panel.rs
31
0.0
0.0% crates/term-wm-sys-ui-components/src/wm_keybinding_overlay.rs
24
92.16
0.22% crates/term-wm-sys-ui-components/src/wm_menu_overlay.rs
24
0.0
0.0% crates/term-wm-ui-components/src/center.rs
24
75.89
0.81% crates/term-wm-ui-components/src/text_renderer.rs
23
64.11
-5.47% crates/term-wm-ui-components/src/dialog_overlay.rs
22
23.08
-0.95% crates/term-wm-sys-ui-components/src/wm_top_panel.rs
21
56.73
1.95% crates/term-wm-ui-components/src/list.rs
21
61.96
0.67% crates/term-wm-ui-components/src/toggle_list.rs
20
37.04
-0.61% crates/term-wm-ui-components/src/ascii_image.rs
15
55.8
4.79% crates/term-wm-core/src/io/unified_event_source.rs
15
82.41
0.83% crates/term-wm-ui-components/src/markdown_viewer.rs
13
89.21
1.29% crates/term-wm-ui-components/src/menu.rs
11
93.82
crates/term-wm-core/src/hitbox_registry.rs
11
70.76
-1.69% crates/term-wm-core/src/keybindings.rs
6
97.06
crates/term-wm-core/src/task_scheduler.rs
6
87.41
-0.04% crates/term-wm-sys-ui-components/src/wm_debug_log.rs
5
70.59
crates/term-wm-core/src/events.rs
3
88.0
crates/term-wm-core/src/io/frame_pacer.rs
3
75.82
-0.42% crates/term-wm-ui-components/src/svg_image.rs
3
0.0
0.0% src/lib.rs
2
87.93
1.17% crates/term-wm-core/src/utils/selectable_text.rs
2
54.41
-5.2% crates/term-wm-core/src/window/window_manager/focus.rs
1
0.0
0.0% crates/term-wm-core/src/config.rs

Coverage Regressions

Lines Coverage ∆ File
9
42.9
-5.57% crates/term-wm-core/src/runner.rs
7
79.03
14.69% crates/term-wm-ui-components/src/terminal.rs
6
74.85
-5.35% crates/term-wm-core/src/window/window_manager/mod.rs
5
65.16
0.63% crates/term-wm-core/src/component_context.rs
3
43.4
-1.28% crates/term-wm-ui-components/src/confirm_overlay.rs
3
83.55
-4.45% crates/term-wm-ui-components/src/scroll_view.rs
3
75.89
0.81% crates/term-wm-ui-components/src/text_renderer.rs
3
0.0
0.0% src/main.rs
2
40.34
3.19% crates/term-wm-core/src/components/mod.rs
2
86.88
-0.9% crates/term-wm-core/src/reaper.rs
2
87.93
1.17% crates/term-wm-core/src/utils/selectable_text.rs
2
0.0
0.0% crates/term-wm-ui-components/src/center.rs
1
66.75
8.05% crates/term-wm-core/src/layout/tiling.rs
1
1.03
-0.17% crates/term-wm-core/src/window/window_manager/overlays.rs
1
51.9
-3.32% crates/term-wm-sys-ui-components/src/wm_bottom_panel.rs
1
87.41
-0.04% crates/term-wm-sys-ui-components/src/wm_debug_log.rs
1
68.08
-5.82% crates/term-wm-sys-ui-components/src/wm_help_overlay.rs
1
92.16
0.22% crates/term-wm-sys-ui-components/src/wm_menu_overlay.rs
1
23.08
-0.95% crates/term-wm-sys-ui-components/src/wm_top_panel.rs
1
64.11
-5.47% crates/term-wm-ui-components/src/dialog_overlay.rs
1
82.41
0.83% crates/term-wm-ui-components/src/markdown_viewer.rs
1
89.21
1.29% crates/term-wm-ui-components/src/menu.rs
Jobs
ID Job ID Ran Files Coverage
1 28817147915.1 06 Jul 2026 07:23PM UTC 81
69.49
GitHub Action Run
Source Files on build 28817147915
  • Tree
  • List 81
  • Changed 43
  • Source Changed 41
  • Coverage Changed 39
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #28817147915
  • c07ddf12 on github
  • Prev Build on main (#28691133374)
  • Next Build on main (#28876918636)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc