Skip to content

v0.2.0

Choose a tag to compare

@SysAdminDoc SysAdminDoc released this 10 Sep 17:32
· 41 commits to main since this release

Added

  • An option to offer Mozilla's prerelease language models (Azerbaijani, Belarusian, Bosnian, Norwegian, Nynorsk), off by default because Firefox ships them to its nightly channel only.

Changed

  • The Firefox build declares that it collects no data, which Mozilla requires of every new add-on submission, and its minimum Firefox version is now 142 (the release where that declaration is understood on both desktop and Android).
  • The Firefox build no longer carries any Chrome-only code. The offscreen-document branch is cut at build time, so web-ext lint reports no errors, warnings or notices.

Fixed

  • Card grids and other link-wrapped blocks (div > a > div) are walked into instead of being sent to the engine as one unit, so bilingual mode no longer appends a second copy of every card.
  • Content revealed after the first pass is picked up: the observer now watches text edits and the attributes that decide whether a block is translatable (hidden, open, lang, translate, aria-hidden), and re-checks the blocks an earlier pass skipped when a class or style changes.
  • A block the page re-renders in place is translated again instead of keeping a stale translation forever, and the old translation goes with it.
  • Writes to the page are no longer seen as page changes by the extension's own observer, so translated text is never fed back to the engine.
  • Restore puts back a lang attribute the page set itself instead of deleting it.
  • The engine is never handed its own output. Text it produced on the page is remembered for ten minutes, so a page that copies a finished translation into a new element does not get that text translated a second time.
  • Web addresses, email addresses and long reference numbers inside a sentence come back exactly as they went in. The engine used to put a space inside a query string and translate the domain part of an address.
  • The model catalog's own platform gates are respected. A desktop browser was picking the Android build of the Japanese, Korean, Chinese and Russian models, and prerelease models were offered as if they had shipped. Norwegian Nynorsk now has a display name instead of showing as nn.
  • A block that declares its own language is translated with that language's model, or left alone when the model is not installed. An Arabic quotation on a Spanish page used to be pushed through the Spanish model and came back as nonsense.
  • Every setting on the options page now changes what the extension does. A "never" rule keeps Glossa off that site entirely and says so in the popup, a page in a language you read is not offered, the editable-field skip is honoured, and the catalog refresh uses the interval you set.
  • A protected run of text keeps its exact spacing. A version number like v1.2.3 is no longer spaced out, and a url in brackets stays tight against them.
  • One block's protected text no longer switches protection off for the next block, which happened whenever a block's only text sat inside <code>.
  • A footnote or tooltip block nested inside a link no longer splits the sentence around it into fragments.
  • A block the page re-renders gets its original language back, so it is offered for translation again instead of looking like it is already translated.
  • When the engine fails, every block it did not reach is released instead of being skipped for the rest of the page's life.
  • A change the page makes while a translation is being written to the page is no longer lost.