v0.11.0

Prerelease

Forms

Omaweb draws its own suggestion list under a form field and fills the field from it. It offers three things there: what you typed before, your saved addresses and your saved payment cards. None of them enter Sync, and a Private window keeps and offers none.

  • Form history keeps what you type into a text field and submit, per Space. It offers it again when a field of the same name has focus. The list shows six rows at most. The arrows walk it, Enter or a press fills, Shift+Delete forgets a value and Escape closes it.
  • Form history never keeps password, autocomplete=off, card or one-time-code fields. It refuses any value shaped like a card number. It keeps only what you typed, not what the page put there.
  • Settings has an addresses section with name, street, postal code, city, country, phone and email. A field the page marks as part of an address lists them above form history.
  • Picking an address fills the focused field and every empty address field of that form that is on show. A field that already holds a value keeps it. Addresses are offered in every Space.
  • Settings has a payment cards section, with each card listed by nickname or brand and its last four digits. The number shows only as those four once saved.
  • Cards are kept in the desktop's keyring, the Secret Service, and nowhere in Omaweb's own data. A machine with no Secret Service has no payment cards.
  • A card field offers your cards while it is empty, on a secure page only, in the page or in a payment processor's frame. Picking one fills the number, name and expiry. You type the security code, which is never kept.
  • After you type a card into a form and submit it, a bar offers to save it, with Save and Not now. Site information lists each card fill for the life of the page.
  • If the keyring cannot be read, Settings says why: nothing answered, it stayed locked, or it answered with an error. It offers Try again. Saving a card into a locked keyring has the desktop ask you to unlock it. Left locked, the card stays in the fields and Settings says it was not saved.
  • While an Agent's step runs in a tab, form history keeps nothing, no address or card is offered and no card is offered for saving.
  • Clear browsing data offers Form history and Payment cards. Payment cards is off each time the dialog opens.

Security keys and passkeys

A site that asks for a security key or a passkey gets Omaweb's own prompt. It sits where the Site-permission question does and names the site and the Space. It changes in place as the request moves on. It asks you to touch the key, or for a masked PIN with the attempts left. It lists the accounts on a key to choose from, and names the cause of a failure. Escape, Cancel and Close decline, and so does leaving the tab.

The engine reaches security keys over USB only. The prompt says that a phone or a passkey stored on the computer cannot answer here. A key that needs no PIN and holds one account is touched without any prompt. The prompts have not yet been tried with a real key.

Site information

Site information is a card about 400 px wide that floats from the address over the page edge. A band in the verdict's colour leads it, then the host and four tiles: the certificate, blocked requests, cookies and site data, and third parties. Each tile opens its detail inside the card.

  • The lock opens the card at its top. The shield, which did nothing when clicked, opens it at the blocked requests. The new Site information command, Primary+Shift+L by default, opens it too.
  • Enter opens a tile, Escape steps back and Escape again closes the card.
  • Each permission the site asked for, or that you decided, has a row with Allow, Ask or Block.
  • Clear site data and Reset permissions sit side by side at the bottom.
  • The certificate dialog is gone. Its content is in the card's certificate detail, which the certificate question opens too.
  • Clear Space data moved to Browsing data in Settings. The notes on what the engine cannot do moved to the privacy section of Settings.

Projects with omaweb dev

Run omaweb dev [address] [--agent <command>] in a project's folder to open that folder's Space. The first run creates the Space, named after the folder, and remembers the address. Later, a bare omaweb dev in that folder or any folder below reopens it. The window comes forward.

  • A tab already on the address's origin is selected. Otherwise the Start page's road keeps driving until the dev server answers an HTTP request, and then the page loads. Escape gives up the wait.
  • Omaweb never starts your server, and omaweb dev grants Agents nothing.
  • :ask in a project's Space runs the project's agent command, or the global one, in the project folder. {dir} in the command stands for that folder.
  • Settings shows each project under its Space, read-only, with Forget project. A project stays on this machine, outside Sync, and a Private window has none.

Agents in a sandbox

The omaweb command is a small client in a new omaweb-cli package, linked only to Qt's Core and Network. The omaweb package depends on it, and the browser moves to /usr/lib/omaweb/omaweb-browser. A launch or an address still opens the browser.

Your coding agent can run in a container, a Distrobox, a VM or over SSH and drive the browser on the desktop. The README has recipes for Incus, Docker or Podman, Distrobox and SSH. Whatever receives the forwarded socket acts as you, under the same Allow agents and Space grant rules.

When no browser answers, a command names the socket path it tried. It also says that a container or an SSH session needs the socket forwarded from the host. On another distribution, the cli preset builds the client alone on Qt 6 base.

Fixes

  • The chrome and the page rest on whole device pixels under fractional scales such as 1.25 and 1.6. They used to be drawn soft, and an extension's popup, such as Bitwarden's, split along a diagonal.
  • Starting Omaweb no longer moves the desktop wallpaper to the theme's next background.
  • The right-hand buttons of Settings rows, such as Remove, keep their right border.

Full changelog: https://github.com/villekivela/omaweb/compare/v0.10.0...v0.11.0

This release on GitHub