Changelog
From 1.3.1 – Bookmark Import/Export:
- Added Chromium Bookmark Import. Auto-detects installed Chromium-based browsers: Google Chrome, Microsoft Edge, Brave, Opera, Vivaldi, Opera GX.
- Added Firefox Bookmark Import. Opens a file picker for the user to select their exported bookmarks.html file.
- Added Export Selected as Bookmarks HTML — exports the currently selected URLs.
- Added Export Group as Bookmarks HTML — exports all URLs in a group.
From 1.3.0 – Status Bar:
- Added URL usage tracking columns. Open Count displays how many times each URL has been opened. Last Opened displays the timestamp of when the URL was last opened.
- Added status bar with counts of URLs total, visible, selected, valid, invalid, groups, tags, opened, and current filter summary.
- Search bar now filters the visible URL list, and the first visible match is selected automatically.
From 1.2.9 – Add to Startup:
- Added “Start with Windows” checkbox to the Options dialog, using a Startup folder shortcut for safer Windows auto-start behavior.
- Added “Quick Add URL” in the tray and main menu with manual URL entry dialog.
- Added “Open Database” in the main menu, allowing the URL store location to be changed.
- Added “Save Database As” in the main menu, allowing the database to be saved with a custom name and location.
From 1.2.8 – Editing UX Improvements:
- Replaced modal title editing with in-place editing in the Title column.
- Replaced modal URL editing with in-place editing in the URL column, while preserving duplicate checks, cache updates, and persistence.
- Enabled inline group rename directly on group headers instead of using a dialog.
- Fixed theme glitches in scrollbars and dialog boxes.
- Renamed Captured column to Created.
From 1.2.7 – Import Export:
- Added CSV export with selectable columns. Selection stored in the INI.
- Added JSON Export and Import in the File Menu.
- JSON Export now writes: URLs, titles, groups, tags, auto-tag and auto-group rules.
- JSON Import now supports: Merge with existing data, Replace all existing data.
From 1.2.6 – Auto Group and Multiselect:
- Added Auto Group Rules system for automatic URL grouping based on URL substring matching.
- Added multi-select support in the URL grid.
- Added bulk URL operations for selected rows: delete, validate, open, copy, move, shortcut, edit, tags, title, group.
From 1.2.5 – UI Changes:
- Replaced the previous ListView URL view with a custom owner-drawn UrlGrid.
- Added grouped URL rendering with custom headers, sorting, scrolling, selection, drag/drop, and column handling in the new grid.
- Fixed Main Menu and Grid scrollbars not following Dark Mode.
- Added small visual enhancers like drag’n’drop cursors and hover bars.
From 1.2.4 – Autotag and Async Loading:
- Added auto tagging system. Add a rule with pattern github.com and tag dev — any captured URL containing github.com will automatically receive the dev tag.
- Added Async URL Loading. Speeds up startup.
From 1.2.3 – Columns and URLs Drag-and-Drop:
- Added column with ID and enabled dragging URLs to change their position. Order is saved in the INI file and restored on startup.
- Columns can be reordered by dragging headers on the ListView.
- Added Dark Mode dialog box fixes.
From 1.2.2 – Desktop Shortcut and Performance:
- Added Create Desktop Shortcut (right-click context menu and URLs → Create Desktop Shortcut) — writes a standard .url file to the Desktop using the page title as the filename.
- Favicons are now cached as PNG BLOBs in the SQLite database (favicons table). Speeds up startup.
- ListView column widths and repaint now happen exactly once after all URLs are loaded. Speeds up startup.
From 1.2.1 – URL Validation:
- Added Validate URL (right-click context menu) — performs an HTTP request for the selected URL and reports the status (for example: ✔ 200 OK, ✘ 404 Not Found, ✘ Unreachable).
- Added Validate All (URLs → Validate All…) — validates every URL in the list sequentially, updating the Valid column in real time.
- Added Validate Group URLs (URLs → Validate Group URLs… and right-click context menu) — validates only the URLs belonging to the same group as the currently selected item.
- Added Validate URL on capture (Options → Validate URL on capture) — when enabled, every newly clipboard-captured URL is silently validated and the Valid column is updated immediately; off by default; persisted as ValidateOnCapture in the INI file.
- Added Valid column — new ListView column showing per-URL validation status; colour-coded green ✔ for reachable (2xx/3xx), red ✘ for errors; column width is persisted in settings.
- Added Delete Invalid URLs (URLs → Delete Invalid URLs…) — removes all invalid marked URLs after confirmation; enabled as soon as any URL has been validated (single or bulk).
From 1.2.0 – Check for Updates:
- Added Check for Updates on Startup option.
- Added manual Check for Updates option.
- Update Dialog actions dynamically driven by the server response.
- Added Download Setup, Download Portable, and View Changelog buttons.
- Added Skip button to dismiss update.
From 1.1.9 – Options Dialog:
- Show notification on new URL — toggle balloon notifications.
- Show on startup — start visible or hidden to tray.
- Always on top — keep window above all others.
- Dark mode — full dark theme toggle.
- Show/Hide hotkey — customizable global hotkey picker.
- Reset window position — restore default centered size.
From 1.1.8 – Dark Mode:
- Full dark theme — dark title bar, menu bar, ListView, buttons, dialogs, scrollbars.
- Undocumented Windows 10 APIs — SetPreferredAppMode, AllowDarkModeForWindow, FlushMenuThemes via uxtheme ordinals.
- Owner-drawn buttons — custom dark button painting with press/focus states.
- Dark header custom draw — white text on dark column headers.
- Dark dialog support — Options, Input, Tags Picker, and About dialogs all respect dark mode.
From 1.1.7 – Global Hotkey:
- Customizable show/hide hotkey — default Ctrl+Shift+G, toggle main window visibility from anywhere.
- Hotkey picker in Options — uses the msctls_hotkey32 control for intuitive key combination selection.
- Persisted in INI — modifier and virtual key saved/loaded across sessions.
From 1.1.6 – Menu & Keyboard Shortcuts:
- Full menu bar — File, URLs, Tags, Groups, Help menus built dynamically in code.
- Accelerator keys — F1 (About), F2 (Edit Title), F3 (Open), F4 (Edit URL), F5 (Copy), F6 (Add Tag), F7 (Add Group), F8 (Delete).
- Shortcut labels in menus — all accelerator keys displayed as right-aligned text in menu items.
- Right-click context menu — full context menu on ListView items with all URL/group operations.
- Menu item enable/disable — items grayed out contextually (no selection, no groups, etc.).
From 1.1.5 – Tag System:
- Global tag registry — create named tags available across all URLs.
- Multi-tag assignment — assign multiple tags to any URL via a checklist picker dialog.
- Tag pill rendering — colored rounded-rectangle pills drawn in the Tags column via custom draw.
- Tag color hashing — each tag name gets a deterministic color from an 8-color palette.
- Filter by tag — ComboBox dropdown to filter the entire url list by a single tag.
- Rename / Delete tags — changes propagate to all tagged URLs.
From 1.1.4 – Group System:
- Named groups — organize URLs into collapsible groups.
- Default “Uncategorized” group — auto-created for clipboard captures.
- Rename / Delete groups — via menu or right-click context menu.
- Move group up/down — reorder groups with persistent sort order.
- Move URL between groups — right-click “Move URL to Group” submenu.
- Group order persistence — stored in SQLite with sort order.
From 1.1.3 – URL Management:
- Inline title editing — rename URL titles directly in the list.
- URLs editing from right click menu.
- Copy to clipboard — copy selected URL back to clipboard for pasting.
- Open in browser — launch selected URL in the default browser.
- Delete selected / Delete all — remove individual or all URLs.
- Column sorting — click column headers to sort ascending/descending with arrow indicators.
- Column resizing — user-resized column widths are saved and restored.
From 1.1.2 – System Tray Integration:
- Tray icon — always present in the notification area.
- Minimize to tray — minimizing or hiding sends the window to tray.
- Restore from tray — double-click tray icon restores window position.
- Tray popup when a new URL is captured.
From 1.1.1 – Core Functionality:
- Automatic clipboard URL capture — monitors the system clipboard and captures any URLs.
- Duplicate detection — prevents the same URL from being added twice.
- Page title fetching — automatically downloads and displays title from each captured URL.
- Favicon fetching — downloads 16×16 favicons via Google favicon service and displays them in the list.
- SQLite persistence — all data are stored in a local Db file.
- Settings preferences saved in a INI file.
