Skip to content

Releases: driceroland/Search

Search 1.0.3

Choose a tag to compare

@driceroland driceroland released this 24 Sep 16:05

Security, and the mouse wheel. Search 1.0.3 closes the holes found in this week's reviews — an extension could read files outside its own folder, and a page or an ad could open another app without asking — and copying a saved password now asks for Touch ID. A mouse wheel scrolls smoothly again on x.com and pages like it, Bitwarden signs in to a self-hosted server, and extension popups hear what changes while they are open. Also: History opens at once, music keeps playing when you switch spaces, a link from Mail brings Search to the front, a full-screen video no longer goes black, pop-ups need a click, and the tab bar folded away with ⌘S comes back on a ground of its own. Your extensions may each ask once more for their permissions at their next update.

Added

  • Updates can wait for you: Settings › About › Install updates on its own, on as before. Switched off, Search still looks once a day and says when a newer version is out, and fetches, checks and installs it only when you press Install.

Fixed

  • Security hardening across updates, extensions and the bench, from a careful private report — thanks to Vahagn Yengibaryan. An update is installed only if it meets the Developer ID requirement a shipped Search is signed to and matches its checksum; an extension's update is compared on everything it may do, the sites it reaches and the APIs Search answers for it included, and a package never supplies the files only Search writes beside it; an extension may request only permissions its manifest names, and reads browser settings or signs in only with the permission for it; and “Let a script drive Search” opens only once switched on in Settings.
  • Bitwarden signs in to a self-hosted server. An extension's popup, and the page its "pop out" opens in a tab, now hear what changes while they are open: WebKit sent them no events at all, so Bitwarden's popup never learnt that its server had changed, and signed in to bitwarden.com, where a self-hosted account doesn't exist, until it was opened again.
  • A mouse wheel scrolls pages that listen to the wheel themselves, as carousels and x.com do: Search stopped pages bouncing past their top and bottom with a style of its own, and together with such a listener WebKit dropped the wheel's steps. The bounce is now turned off by WebKit itself, the page's styles untouched, and the sideways bounce stays for swiping back and forward. Thanks @olllayor (#194). Fixes #180
  • An account picked from the list under a sign-in field is filled only into the page it was offered for.
  • History opens at once with a long past: with two thousand pages the panel took a third of a second to come up, and a second the first time, while it made every line at once and looked on disk for each site's icon. Now it makes only the lines in view, works out its days once, and remembers which sites have no icon. Escape already closes it (#70). (#67)
  • A link clicked in Mail or any other app brings Search to the front, with the page, instead of opening it behind. (#95)
  • The Web Inspector stays beside the page when the window changes size. Search took it out at the first resize and left the page shrunk next to an empty space. (#91)
  • A certificate error is excused without a word only for this Mac itself (localhost, 127.x.x.x, ::1). Any other address, a router or a NAS on your network included, gets the usual warning, which you can pass for that site. Thanks @Dodothereal (#165) and @Hyp4tia for the report (#133)
  • A user script an extension adds is read only from inside that extension's own package, and only for an extension that asked for userScripts. Thanks @burakbuilds (#198)
  • A link to another app — Zoom, FaceTime, a file server — opens only from a click in the page itself, and Search asks first, as Safari does. Mail and phone links still open straight away on a click. Thanks @burakbuilds (#206)
  • Copying a saved password asks who you are first, as showing one does. The copy is kept out of clipboard managers and cleared after 90 seconds. Thanks @burakbuilds (#203)
  • Music, a video or a live stream keeps playing when you switch to another space, as it does in a tab you left; it used to stop. ⌘⇧M, or the tab's speaker, stops it. (#74)
  • An extension from the Chrome Web Store is fetched again only when the store has a newer version. The daily check read the first version="" in the store's reply, which is the XML declaration's "1.0", so every extension counted as out of date: each was downloaded again (uBlock Origin Lite is nearly 10 MB), unloaded and reloaded about once a day, and a password manager signed out with it. Thanks @burakbuilds (#201)
  • A password kept from an https page is no longer offered on a plain http page of the same site, where anyone on the network in between — a café's, a hotel's — could have put the sign-in form there. Search now notes whether a password was saved over http or https, as Chrome does, and an http page is offered only the ones kept from http: a router's page still gets its own. A password saved before this is taken as https until it is next used on an http page. Thanks @burakbuilds (#205)
  • Saving or removing a password touches only Search's own entry in the keychain. Both looked an entry up by site and account alone, which also found what another app keeps for the same site: git's token for github.com under your username, for one. Saving your GitHub password in Search wrote it over that token once the keychain was allowed to, and removing it deleted the token. Search's entries are now also marked as a web form's, so one can sit beside another app's for the same site. Thanks @burakbuilds (#208)
  • A page opens a new tab of its own only from a click or a key, as in Safari. WebKit on the Mac lets a page call window.open whenever it likes, and Search took you to each one: a page could open tabs on load or on a timer and pull you away from the one you were reading. A sign-in or share window opened by its button opens as before. Thanks @burakbuilds (#207)
  • An extension loaded from a folder asks again when Reload finds it wants more than you agreed to, the same question an update already asks, and keeps the version you had if you say no; Reload used to take the new access without asking. Thanks @karadoganyi (#161), and @Hyp4tia for the report (#135)
  • The tab bar folded away with ⌘S comes back over the page on a ground of its own, as the column does: the page no longer shows through between the tabs, and its shadow falls along the bar's edge instead of from every title and icon.
  • ⌘W no longer bounces between two pins: with only pins open, putting down the last one awake leaves an empty tab instead of waking the other again. Thanks @armin-ahmadii (#125)
  • History keeps two articles or two videos of the same site apart: an address's query (?id=, ?v=) is part of what makes it a page of its own, so the second Hacker News story or YouTube video you open no longer takes the first one's place. Thanks @yuxino (#154)
  • A video put full screen, on YouTube and the like, fills the screen with its picture rather than black with the sound playing on. Thanks @StefanTodorov32 (#220)
  • The back, forward and reload buttons have a little room between them. Thanks @DagimAlemayehuu (#209), and @olllayor for asking (#185)

Search 1.0.2

Choose a tag to compare

@driceroland driceroland released this 24 Sep 12:58

Passkeys, password managers and Google. A site's passkey button now brings up the Mac's own passkey sheet — Touch ID, your iPhone, a security key — and 1Password, Bitwarden and Proton Pass get their fixes. Pages no longer see anything of Search that Safari doesn't show them, the mark Google took for a robot's; a saved password is offered only on its own site; and Search can be the Mac's default browser. New, each off until you turn it on in Settings: a bookmarks bar, a peek at a link with a shift-click, the video that follows you to another app, pages at 120 Hz, and where a link goes. Also new: mute a tab, share a page, copy a link as Markdown, the mouse's back and forward buttons, and spaces in the bar across the top. Faster to open, new tabs in about 10 ms, and many fixes. If passkeys still fail after the update, restart your Mac once.

Added

  • A bookmarks bar, as in Chrome and Safari: your bookmarks in a row above the page, folders opening as menus. Off unless turned on, in Settings › Tabs › Show the bookmarks bar or Bookmarks › Show Bookmarks Bar; it folds away with the tabs.
  • Peek at a link, as in Arc: shift-click it and its page opens in a panel over the one you are reading. Escape, ⌘W or a click beside it puts it away; its other button keeps it as a tab beside this one, without loading it again. Off unless turned on: Settings › General › Peek at a link with a shift-click. Thanks @beyondbriks for the idea
  • The video that comes out into its floating window when you leave its tab (YouTube and the like) can be kept in its tab: Settings › General › Float the video when you switch tabs, on as before. ⇧⌘P still floats one by hand. Thanks @mihsanbudiman for asking
  • The site you are on, in a card: click the tab you are on to change its address, and a card comes up under it with whether the connection is private (a step in shows the certificate), Copy Address, Print and the page's zoom. It goes as soon as you type. Right-click a tab › Site Information… opens it too. In the column and in the bar across the top alike, with nothing added to either. The card is from @kndpt's address bar (#56), which stayed out: Search has the column or the bar, never a second row over the page.
  • Mute a tab and let it play on: press the speaker at the end of a tab that plays sound, or pick Mute Tab in its right-click menu. A muted tab keeps a crossed-out speaker, to be heard again the same way. Thanks @merttopuz (#61)
  • File › Share… sends the page where the Mac would send it: Mail, Messages, AirDrop, Notes and the rest, as Safari's Share button does. Thanks @merttopuz (#78)
  • Pages at 120 Hz on a screen that can, like a MacBook Pro's: animations and scrolling in pages drawn up to 120 times a second instead of about 60. Settings › General › Pages at 120 Hz, off by default, as in Safari; it uses more battery. Open tabs follow when reloaded. Thanks @AxxzyWasTaken (#87)
  • Brave Search and Qwant join the engines in Settings › General › Search with. Thanks @vivescene (#52)
  • A middle-click on a link opens it in a tab of its own beside the one you are on, and leaves you where you were — the same thing ⌘-click does, for hands that learned it that way. (#45) Thanks @Dodothereal (#71)
  • Copy as Markdown Link, in a tab's right-click menu beside Copy Address and in the Tabs menu: [title](address), ready to paste into a note, a message or a pull request. (#81) Thanks @merttopuz (#82)
  • The video you're watching can float when you switch to another app, as in Arc, and go back into its tab when you return to it. Settings › General › Float the video when you switch apps, off by default. Only from the sites a video floats from on its own when you leave its tab; one floated with ⌘⇧P stays out. Thanks @farchanrifai (#152)
  • A mouse's back and forward side buttons navigate the page, the way the trackpad's two-finger swipe already does. Thanks @reloadedhead (#79)
  • Flick the floating video to a corner, as in Arc and Dia: two fingers on the window send it to the corner or edge they point at, on a short spring, instead of pushing it along. Settings › General › Flick the floating video to a corner, off by default. Dragging still puts it anywhere. Thanks @farchanrifai (#151)
  • Spaces with the tabs across the top: two fingers up or down over the bar, or a notch of a mouse wheel, bring the next space's tabs in as these go; past the last, a new space is made right in the bar. "New Space…" makes it in place in the column too.
  • Reopen Closed Tab is in the right-click menu of every tab, in the row and in the column, beside Close Other Tabs; it was only on ⌘⇧T and in the History menu. Thanks @andupoto for asking
  • Extensions on private tabs, if you allow them: Settings › Extensions › Allow on private tabs, off by default. It applies to private tabs opened after it is turned on. Thanks @merttopuz (#55)
  • Scroll with the middle button, as on Windows: click the wheel on a page, then move the mouse up or down; another click stops it. Settings › General › Scroll with the middle button.
  • Homebrew: brew install --cask driceroland/tap/search, and brew upgrade brings each new version.
  • ⌘S folds the tab bar away in its layout across the top too, as it folds the column: the page takes the whole height, and the bar comes back down over it when the pointer rests against the top edge. The View menu says Hide Tab Bar there.
  • Where a link goes, before you click it: point at it and its address shows at the bottom of the page, in the other corner if the pointer is in that one. Settings › General › Show where links go, off by default. Thanks @fschrhunt (#29)

Fixed

  • A page on this Mac opens: an .html or .xhtml file double-clicked in the Finder, once Search is the Mac's browser, opened Search and nothing else. It now comes up in a tab, with the files beside it it asks for.
  • Gmail's download button downloads the attachment again, a PDF included: a file the server sends as an attachment is now always saved, as in Safari and Chrome, where Search showed it instead whenever WebKit could — out of sight, in the hidden frame Gmail loads it into, so the button seemed to do nothing.
  • Right-click on a picture works again in a tab you had followed a link out of: closing or putting to sleep the tab the link opened took Search's page scripts away from the first one, so the right-click menu on an image (X's photos, for one) showed nothing at all, and saved passwords, the swipe back and hidden elements stopped answering there too.
  • The back and forward buttons of a Logitech mouse set up in Logi Options+ (an MX Master among them) navigate the page: Options+ sends them as a swipe, not as mouse buttons, and Search only listened for the buttons. Thanks @ductan2 (#169)
  • Pages no longer see anything of Search that Safari doesn't show them. They could see the messages Search's own scripts send to the app (window.webkit, which Safari never exposes) and the variables those scripts kept: the mark of an app's embedded web view rather than a browser, which Google answered with a CAPTCHA every few searches, and some sign-ins with "This browser or app may not be secure". Search's scripts now run in a world of their own beside the page, out of its sight; 1.0.1 also claimed Safari 26.5 on every Mac, where it now names the Safari the Mac has. (#26)
  • Going back or forward with two fingers on the trackpad takes a shorter swipe (70 points instead of 110), and a quick flick is enough, as in Safari. Thanks @mihsanbudiman for the report
  • Scrolling is smoother: while a page scrolled, the fill that shows how far you have read in its tab was redrawn at every frame — up to 120 times a second, taking a third of a core from the thread that puts the scrolled page on screen. It now moves in hundredths, only when that changes. Thanks @e30klip and @mihsanbudiman for the reports
  • A tab you drag to another place keeps up with the pointer: each move of the hand used to redraw the whole column or bar, the neighbouring spaces' tabs included, and the tab trailed behind. Now only the tab being carried moves until it changes place. Thanks @e30klip for the report
  • With a password manager that handles passkeys — 1Password, Bitwarden, Proton Pass — what it hands back to the browser now reaches Search's passkeys. Their scripts in the page ran before Search's and kept hold of WebKit's own passkey function: a site asking for a passkey under its sign-in field left a request open with macOS that way, and Search quitting meanwhile could jam every passkey after it until the Mac restarted. Search's passkey patch now runs fir...
Read more

Search 1.0.1

Choose a tag to compare

@driceroland driceroland released this 23 Sep 21:38

The first update, made of a day of your replies and pull requests. Search opens again on macOS 14, and signing in to Google no longer reloads the page over and over with iCloud Passwords installed. New, each off until you turn it on in Settings: Spaces, a sidebar that hides until the pointer reaches the edge, and the search engine of your choice. Also new: ⌘S folds the sidebar away, a middle-click closes a tab, a tab can be renamed, and the Web Inspector is in the View menu. Fixed among others: ⌘1–⌘9 on every keyboard layout, Tab between the fields of a form, dragging tabs, a double-click along the top to fill the screen, and the Mac's beep while typing.

Added

  • A middle-click on a tab closes it, in the row across the top and in the column. A pinned tab is put down, as with ⌘W. Thanks @lusqua (#27)
  • Rename a tab: Rename in a tab's right-click menu, or Tabs › Rename Tab, types a name over the title in place. The name stays with the tab wherever it goes, and survives a quit; emptying the field gives the page's own title back. Thanks @theosementa (#32)
  • The sidebar can hide by itself until the pointer reaches the left edge: Settings › Tabs › Hide the sidebar until the pointer reaches the edge. ⌘S still brings it out to stay. Thanks @lusqua (#30)
  • Spaces: separate sets of tabs in the one window, each with its own icon and, if you like, its own downloads folder — signed in wherever your other spaces are, or starting afresh with cookies and sign-ins of its own, as you choose when you make it. Turn them on in Settings › Tabs, then switch with ⌃1–⌃9, the space's icon, or two fingers sideways over the column of tabs, where the next space slides in beside this one; past the last, the column offers to make a new one. (#4)
  • Web Inspector: Inspect Element in a page's right-click menu, and in the View menu the inspector (⌥⌘I), the JavaScript console (⌥⌘J) and picking an element (⌥⌘C), the keys Chrome and Arc use. (#13)
  • ⌘S folds the sidebar away and the page takes the whole window; the left edge brings the tabs back out. Thanks @kndpt (#7)
  • Search with something other than Google: Settings › General › Search with offers DuckDuckGo, Bing, Ecosia, Startpage and Kagi, or any address with %s where the words go. Google stays the default. Thanks @karadoganyi (#43)
  • A skill that teaches coding agents to drive Search with ./bench. Thanks @jasonkneen (#14)

Fixed

  • Search opens on macOS 14 again: it quit as it opened, before its window, setting the look chosen in Settings on an application that didn't exist yet. Thanks @serhiitroinin (#38)
  • A column of more tabs than the window holds scrolls between the pinned tabs and its foot, instead of running under the traffic lights and off the bottom of the window; the tab you go to is brought into view. Thanks @lusqua (#39)
  • ⌘T never leaves two empty tabs: an empty tab already open elsewhere in the row comes to its end and opens, with whatever was typed in it and not gone to cleared. (#35) Thanks @SamarthaB10
  • While a tab's address or name is being edited in the tab itself, a click anywhere else — the page, the column below, the rest of the strip — keeps what was typed, as Return does, instead of throwing it away. An address left as it was loads nothing again.
  • Folded away with ⌘S and brought out at the edge, the column arrives whole: the traffic lights and the pinned tabs come in with it instead of standing there before it.
  • A double-click along the top of the window fills the screen, as a title bar's does: it was answered twice and ended where it started. In the column's mode the page's top edge takes it too, folded away with ⌘S included, where nothing did.
  • ⌘← and ⌘→ move through text while editing; adding Shift selects text instead of navigating away from the page. Thanks @yuxino (#19)
  • Extensions that open something inside a page no longer make it reload: signing in to Google with iCloud Passwords installed reloaded the page over and over, and every Vimium key that opens its bar or its link hints reloaded the page. Such a panel now gets the same answers from the browser as in Chrome. (#2)
  • Dragging a tab to put it elsewhere in the row across the top moves the tab, not the whole window, and a tab being dragged stays under the pointer as it passes the others, in the column too.
  • A fresh install follows the Mac's appearance: on a Mac set to dark the browser and its pages start out dark, instead of always starting light. Thanks @mikuteto-dev (#22)
  • The address field on a new tab holds still while its suggestions appear under it, instead of jumping up. Thanks @fschrhunt (#16)
  • 1Password's Sign in button works: an extension's page can send its tab to a website again, where it used to do nothing.
  • A video in the floating window costs no more to play than in its tab. The window's shadow made WindowServer composite every frame; it has none now. (#33) Thanks @AxxzyWasTaken
  • Tab moves between a form's fields again, as in every browser; ⌃Tab and ⌃⇧Tab switch tabs.
  • ⌘1–⌘9 (and ⌘0 to reset the zoom) work on every keyboard layout, AZERTY included: they follow the key, not the character it types.
  • A private tab now leaves nothing behind: it no longer shows up in Recently Closed. Thanks @yuxino (#6)
  • ⌘L then Return keeps the whole address, the part after ? included. Thanks @yuxino (#5)
  • A floating video shows the whole picture on YouTube, and the page comes back to its tab when it lands. Thanks @Chinteyley (#9)
  • No white flash when a link opens a new tab in dark mode. Thanks @RanaOsamaAsif (#3)
  • Typing no longer makes the Mac beep when a page hasn't put its cursor in a field yet — starting a reply on X, for one. (cc8aa58)

Download: Search.dmg · macOS 14 or later, Apple silicon · 3.2 MB. Search already installed updates itself.

Search 1.0

Choose a tag to compare

@driceroland driceroland released this 23 Sep 12:45

The first version. A browser for the Mac with nothing in the way: tabs in a row or down the side, pinned tabs that keep their place, and one field for addresses and searches. Ads are blocked before they load; passwords and passkeys stay in your keychain; anything on a page can be hidden; articles open in a reading mode and videos float. Chrome extensions install from the Chrome Web Store on macOS 15.4 or later — its button says Add to Search. Tabs you haven't looked at for half an hour sleep and give their memory back. It runs on the engine already in macOS and weighs 2.9 MB.

Build 202609231444, notarised. Needs macOS 14 or later on Apple silicon; Chrome extensions need macOS 15.4. The dSYM archive is for reading crash reports from this build.