Commit Graph
43 Commits
Author SHA1 Message Date
Samuel Onoja 4d60c296a7 Simplify documentation and website; expand shortcut guides 2026-09-30 07:00:20 +01:00
Samuel Onoja 46d33751c6 Back up portal configuration during explicit development upgrades 2026-09-30 05:22:26 +01:00
Samuel Onoja 35537b32c8 Dim and sleep locked displays after inactivity
Add adjustable lock-only inactivity delays, a smooth dimming fade and DRM display sleep without changing output layout. Input, session resume and policy changes wake displays. Pending flips retire before power-off, and protected fallback frames preserve the policy after an early locker crash while unlock ownership checks remain strict.

Reduce the password field and avatar, expose delays in Settings, document the practical swaylock comparison and remove the completed backlog.

Validation: independent review cleared; 255 compositor tests, 7 locker tests and 15 Settings tests pass; affected debug binaries rebuilt. Isolated visual smoke remains blocked by an unlocked nested screenshot timeout, matching the previously established baseline presentation limitation. Real DRM display sleep requires a live session check.
2026-09-30 05:10:04 +01:00
Samuel Onoja d26e1511d1 Implement native InputCapture with private EIS receiver transport
Add consent, zones and outside-edge barriers, connection-scoped leases, bounded input queues and keyboard/pointer forwarding. Restore local input on release, locking, topology or keymap changes, receiver loss and emergency escape. Preserve held-key state and distinguish finger stops from absent scroll axes.

Validation: independent review cleared; 5 native InputCapture unit tests; 32 portal tests; official D-Bus contract checks on a private bus; real installed libei receiver interoperability test. Live physical barrier and consent interaction remain to be checked in a desktop session.
2026-09-30 04:51:08 +01:00
Samuel Onoja baca852ee9 Support isolated live window ScreenCast streams
Render selected toplevels through a private portal-only capture protocol, preserve logical snapshot geometry, and renegotiate PipeWire video on window resizing. Bound outstanding snapshots and retry temporary contention; stop on source closure and session locking.

Validation: portal unit tests (31), capture budget unit, private-bus portal contracts, and real nested/PipeWire isolation, workspace, resize, close and paused-lock tests pass. Independent review cleared. Monitor restore integration timed out on both this build and the unchanged previous compositor under the current nested host.
2026-09-30 04:02:33 +01:00
Samuel Onoja 56a888adb3 Restore explicitly approved ScreenCast display permissions 2026-09-30 03:12:13 +01:00
Samuel Onoja 29a71e9974 Implement native inhibition and acknowledged session-ending confirmation 2026-09-30 02:38:54 +01:00
Samuel Onoja 0ab5f2e05b Add isolated window screenshot targets with native selection 2026-09-29 23:54:32 +01:00
Samuel Onoja c8ed8e6c30 Add configurable session-scoped global shortcut portal 2026-09-29 23:32:41 +01:00
Samuel Onoja e71cd88ff8 Add native portal lockdown policy and serialize configuration writes 2026-09-29 23:10:50 +01:00
Samuel Onoja ddbed192c0 Add background and USB consent with XDG session autostart 2026-09-29 22:53:30 +01:00
Samuel Onoja 915bc8afd6 Add native appearance, screenshot and wallpaper portals 2026-09-29 22:42:27 +01:00
Samuel Onoja 77ff92c6d6 Size the screenshot editor from the captured image 2026-09-29 16:19:50 +01:00
Samuel Onoja eda453dabd Capture screenshots in the compositor instead of grim 2026-09-29 15:51:56 +01:00
Samuel Onoja 2eb5fe7b73 Release layout slots for unbuffered XDG windows 2026-09-29 11:52:17 +01:00
Samuel Onoja 391f6b4e37 Refresh desktop screenshots across the website and README 2026-09-28 11:56:25 +01:00
Samuel Onoja 84b03be53e Refresh a retained portal when starting a Ferese session 2026-09-28 11:41:07 +01:00
Samuel Onoja 9754326f1d Stop the native portal with the graphical session 2026-09-28 11:33:56 +01:00
Samuel Onoja 38067726c2 Activate the graphical session and refresh portal services at login 2026-09-28 11:11:01 +01:00
Samuel Onoja c8e89fb758 Unify shell opacity and add native authentication and system controls 2026-09-28 09:26:14 +01:00
Samuel Onoja 8832a9bf2e Align recording dialog behavior and shell theme styling 2026-09-28 09:15:13 +01:00
Samuel Onoja 6209d556ee Add native screen recording with themed top-bar controls 2026-09-28 08:30:59 +01:00
Samuel Onoja 0c7ff410a3 Merge remote-tracking branch 'origin/main'
# Conflicts:
#	site/README.md
2026-09-28 07:58:33 +01:00
Samuel Onoja e7d92280d6 Add native ScreenCast portal with PipeWire monitor streams 2026-09-28 07:54:22 +01:00
Samuel Onoja 4276a45e9f docs: explain Ferese integration model 2026-09-27 14:02:37 +01:00
Samuel Onoja 3c532725ec Respect committed floating window sizes and client limits 2026-09-27 12:26:46 +01:00
Samuel Onoja 0295b5be3e Document full installation and update links for ferese-wm 2026-09-27 12:15:55 +01:00
Samuel Onoja f8b8704f8b Add native themed session locker and Settings integration 2026-09-27 12:15:55 +01:00
Samuel Onoja 8eca921345 Use self-hosted JetBrains Mono throughout the website 2026-09-27 11:08:18 +01:00
Samuel Onoja a043832a1f Use SVG link arrows to avoid mobile emoji rendering 2026-09-27 11:07:06 +01:00
Samuel Onoja 0cd48bcc81 Add dark website and documentation with GitHub Pages deployment
Include the updated desktop screenshot, active-monitor screenshot capture and editor locking, and Settings window drag areas.
2026-09-27 10:34:33 +01:00
Samuel Onoja dcca5fec88 Add selectable Pixel clock styling and widget font controls 2026-09-27 06:55:21 +01:00
Samuel Onoja 7e96a62e43 Add distinct theme presets and bundle the default Ferese wallpaper 2026-09-27 06:10:52 +01:00
Samuel Onoja 9e90de4e74 Replace user configuration with KDL and improve Rust source spacing 2026-09-27 05:46:51 +01:00
Samuel Onoja 5d6c610fec Add area screenshots and preserve stacking on hover focus 2026-09-26 23:22:38 +01:00
Samuel Onoja c63af64d87 Refine Settings and window startup; refresh project documentation 2026-09-26 21:22:39 +01:00
Samuel Onoja 23991d5bd8 Add native Settings and complete live configuration reload
Add compact branded Settings with safe atomic edits, external config refresh and a draggable sidebar. Reconcile services, update connected displays and input devices, apply live layout policy and window rules, and resolve initial floating placement before tiled insertion. Package the Settings launcher and shared Ferese icon.
2026-09-26 20:31:05 +01:00
Samuel Onoja 672b4e2b60 Add live config reload, session locking and managed daemons
Refine focus gradients, shell workspace controls and popup motion. Correct floating stacking and preserve client-chosen dialog sizes. Add lock protocol probes and session integration.
2026-09-26 19:03:37 +01:00
Samuel Onoja 686b0477d4 Refine shell status icons and window controls; add installer 2026-09-26 05:46:15 +01:00
Samuel Onoja e85fc1e032 advance shell integration and session support 2026-09-25 09:15:07 +01:00
Samuel Onoja 7356986259 test: enforce soak resource budgets 2026-09-25 04:43:25 +01:00
Samuel Onoja d18d5b5fc4 test: harden malformed client handling 2026-09-25 04:39:52 +01:00
Samuel Onoja d46becfd60 test: add native client soak harness 2026-09-25 04:22:29 +01:00