Skip to content

Releases: maxmilton/new-tab

v0.16.1

28 Jun 00:21
v0.16.1
2e6bf56
Compare
Choose a tag to compare

Removed

  • Debounce delay on search input (no real downside to searching on every character change + now search feels snappy)

Changed

  • Code golfing for output bundle byte savings

v0.16.0

27 Jun 09:56
v0.16.0
35232c2
Compare
Choose a tag to compare

Change highlights

  • Migrated to new JS framework stage1 (my fork of stage0 with various improvements)
  • Performance improvements; initial load speed, especially with many open tabs in particular, has a noticeable improvement
  • File size optimisations
  • Migrate package manager from yarn to pnpm
  • Add test tooling and tests
  • Improve linting and CI
  • Automate creating Github releases via https://github.com/maxmilton/action-create-release

v0.15.0

14 Apr 22:19
v0.15.0
ef4a6fe
Compare
Choose a tag to compare

First release that includes the big refactor. Even better performance and significantly smaller files.

Note: This refactor is still WIP so this version will not be published on the Chrome Web Store. It works with known bugs so it's here for early adopters.

Change Highlights

NOTE: From this release onwards the release notes will be in each release on GitHub. To view old release notes see the old CHANGELOG.md file.

v0.14.0

23 Oct 04:31
e717004
Compare
Choose a tag to compare

Added

  • Extract search results list into new reusable component.
  • Extract bookmarks folder into separate component and make a new bookmark node functional/routing component which conditionally renders a folder or link item. This avoids Svelte's logic to insert comment DOM nodes to anchor an if block in case the condition changes.
  • Some extra JSDoc comments for better development feedback in VS Code.
  • Replace many packages with the new @minna-ui/* packages.

Changed

  • Rename most internal names (variables, props, functions, etc.) to remove the leading underscore and to be more descriptive and to be unique so closure compiler mangles it.
  • Use a kind of line-height hack to align things with minimal CSS.
  • Use OffscreenCanvas instead of document.createElement('canvas') — Chrome v69+.
  • Move global click handler logic from menu component to src/common.js.
  • Better click event capture.
  • Tweak shadow colours and animation timing.
  • Move manifest.js into src directory.
  • Move most tooling configs into package.json for a cleaner and less intimidating root directory.
  • Updated dependencies.

Removed

  • Automatic search input focus on document click as this feature was mostly unknown and we now match the UX of the default new tab page.
  • Custom HTML build code, now replaced with makeHtml from @minna-ui/rollup-plugins.
  • Automatic :global() around styles, now these need to be added manually.
  • Unnecessary dependencies.
  • Excessive (and broken) exports information during production build.

Fixed

  • Can't open chrome:// bookmarks sometimes due to click event race condition (still an issue but is now triggered less).
  • Favicon alignment and all favicons have a right margin even if there is no adjacent text.
  • Excessive use of event listeners; click listener on every link item instead of just on open tab links.
  • Unnecessary white space textNodes present in DOM. Uses trimCustomFragments option of html-minifier which means now we need to add special ignore comments in some places to avoid breaking the app due to collapsed white space in attributes and props.
  • New linting errors.
  • Clean up externs and build config.

v0.13.0

23 Oct 04:40
Compare
Choose a tag to compare

Added

  • New setting to sort the list order.
  • Show stats about exports at build time.
  • Customised settings for rollup watch mode.

Changed

  • Light theme is now the default.
  • Extension settings are now stored locally and do not sync to your account.
  • Big refactor of the whole app — same features but changed to do the minimum necessary computation:
    • Rename various variables and methods to be more understandable and mark private objects with _ instead of __.
    • Move app click handler outside of Svelte component since it doesn't need to interact with the component.
    • Reorder top level components for better initial load JS parsing.
    • Place menu static HTML into a {@html} block to avoid unnecessary work and for smaller JS bundle size.
    • Refactor settings app for smaller JS bundle size.
    • Set up bookmark bar resize handler in the component to avoid Svelte setting up a remove handler (the event never needs to be removed)
    • Refactor bookmark bar resize handler loop.
    • Add a new reusable LinkItem component which is shared between the bookmarks bar and the search result.
    • Complete refactor of BookmarkItem and Search components to do the minimum necessary to achieve the desired functionality.
  • Updated dependencies.

Removed

  • Background script was keeping the extension in memory for fast loading... but after some testing it's not necessary. Now the browser can manage the extension memory use better.

Fixed

  • Move theme loader code into a script tag in the HTML page to make sure it's executed as early as possible. This should reduce the chance of a flash of the dark theme when the user has the light theme setting enabled.

v0.12.4

23 Oct 04:40
4e82148
Compare
Choose a tag to compare

Added

  • Extension icons.
  • New chokidar dev dependency which improves watching the filesystem for changes while in dev mode.

v0.12.3

23 Oct 04:40
f234400
Compare
Choose a tag to compare

Changed

  • Updated dependencies — including a Svelte update which might bring improved performance by doing batched component updates.

v0.12.2

23 Oct 04:40
e53b9ae
Compare
Choose a tag to compare

Changed

  • Better search results "show more" button style.

v0.12.1

23 Oct 04:40
ee3148a
Compare
Choose a tag to compare

Changed

  • Switch from Travis to Circle CI for faster and better continuous integration.
  • Clean up and improve package.json.

Fixed

  • Bookmarks not overflowing correctly due to incorrect calculation of width ("Other Bookmarks" not taken into consideration correctly).
  • Don't show "Other Bookmarks" folder if it's empty.

v0.12.0

23 Oct 04:39
e1c76e7
Compare
Choose a tag to compare

Changed

  • Only set the search component as immutable rather than the whole app.
  • Updated dependencies.

Fixed

  • Handle bookmark bar overflow.
  • Hide "Other Bookmarks" when it's empty.