Old Chrome Bookmarks Butt Chrome extension icon

Old Chrome Bookmarks Butt

👥 13 users
📦 v1.1
💾 48.24KiB
📅 2026-03-16
View on Chrome Web Store

Chrome will indicate if you already have this installed.

Overview

# Old Chrome Bookmarks Button

Attempt to perfectly replicate the "Add to Bookmarks" popup last found in Chrome 63. The original was a native macOS Cocoa UI, not web-rendered.

---

## Source files used

### `chrome/app/nibs/BookmarkBubble.xib`
Interface Builder layout for the main popup (clicking the star icon).
- Window: 374 × 145 px
- Font (title "Bookmark"): 13pt — `metaFont="system"`
- Font (all other controls): 11pt — `metaFont="smallSystem"`
- Name input: height 19px, `borderStyle="bezel"`, `controlSize="small"`
- Folder picker: height 22px, `NSPopUpButton`, `bezelStyle="rounded"`, `controlSize="small"`
- Buttons (Remove, Edit..., Done): height 28px, `bezelStyle="rounded"`, `controlSize="small"`
- Done button: `keyEquivalent="\r"` — this is what makes macOS color it blue

### `chrome/app/nibs/BookmarkEditor.xib`
Interface Builder layout for the Edit Bookmark sheet.
- Window: 480 × 270 px
- Font (all controls): 13pt — `metaFont="system"`
- Name / URL inputs: height 22px, `borderStyle="bezel"`
- Folder tree: `NSOutlineView` in `NSScrollView`, height 139px, indent 16px per level
- Buttons (New folder, Cancel, Save): height 32px, `bezelStyle="rounded"`
- Save button: `keyEquivalent="\r"` — colored blue by macOS

### `chrome/browser/ui/cocoa/info_bubble_view.h`
Drawing constants for the popup bubble container.
- Corner radius: 2px — `kBubbleCornerRadius = 2.0`
- Arrow height: 8px — `kBubbleArrowHeight = 8.0`
- Arrow width: 15px — `kBubbleArrowWidth = 15.0`
- Background: pure white — `[NSColor whiteColor]`

### `chrome/browser/ui/cocoa/bookmarks/bookmark_bubble_controller.mm`
Confirmed: folder selector is `NSPopUpButton`, "Choose Another Folder…" at the bottom opens the editor sheet.

### `chrome/browser/ui/cocoa/bookmarks/bookmark_editor_base_controller.mm`
Confirmed: folder tree uses `NSTreeController` + `NSOutlineView`.

---

## Key finding

There are no image assets (PNG, shader, etc.) for any of these controls. Everything — button gradients, glow, the blue NSPopUpButton indicator — is rendered at runtime by macOS AppKit. The CSS in this extension is a manual simulation.

---

## Color matching on macOS (Display P3)

Macs with Retina displays use the **Display P3** color space. This causes a mismatch when trying to match CSS colors to a reference screenshot:

1. You write a hex color (e.g. `#2165f6`) in CSS → Chrome treats it as **sRGB**
2. macOS converts sRGB → P3 for display on screen
3. You take a screenshot → macOS saves it tagged with the **Display P3 ICC profile**
4. You open in Photoshop → it reads P3-encoded pixel values → shows a different hex (e.g. `#3d74ed`)

### Solution: use `color(display-p3 ...)` in CSS

Reference screenshots are already in P3. Pixel-sample them directly (e.g. with Python PIL), then feed those values back into CSS as P3 — bypassing the double-conversion:

```css
background: linear-gradient(
to bottom,
color(display-p3 0.467 0.647 0.961) 0%,
color(display-p3 0.129 0.396 0.965) 100%
);
```

This way the chain is consistent end-to-end: reference screenshot (P3) → CSS P3 values → Chrome renders P3 → screenshot matches reference pixel-for-pixel.

### Converting hex to P3 decimal

`color(display-p3 ...)` does not accept hex — only decimal values from 0 to 1. To convert a hex color sampled from a macOS screenshot:

```
#77a5f5 → r=119, g=165, b=245 → divide each by 255 → 0.467, 0.647, 0.961
```

```css
color(display-p3 0.467 0.647 0.961)
```

Tags

Make Chrome Yours/functionality make chrome yours/functionality

Privacy Practices

Not being sold to third parties, outside of the approved use cases
Not being used or transferred for purposes that are unrelated to the item's core functionality
Not being used or transferred to determine creditworthiness or for lending purposes

🔐 Security Analysis

⏳ Security scan is queued. Check back soon.

The easiest way to access the Borderless Internet, Hola VPN gets you Access to the global online content you want!
Make Chrome Yours/functionality
Speed up, slow down, advance and rewind HTML5 audio/video with shortcuts
Make Chrome Yours/functionality
Skip sponsorships, subscription begging and more on YouTube videos. Report sponsors on videos you watch to save others' …
Make Chrome Yours/functionality