- Widgets BoxModel · Warn on icon rendering taking too long
- Widgets BoxModel · Warm up font rendering
- GeneratorQueryHandler · Workaround Qt 6.4 deadlocks
- BackgroundExecutor · Workaround Qt 6.4 deadlocks
- widgetsboxmodel · Accidentially released dev branch
- URL Handler · Disable implict input action
- Python plugins · Dependent template breaks almost all builds
- Remove title from cliff templates
- GitHub · Remove leftover debug output
- Python plugins · Default trigger overrides not used
- Files · Treat depth 0 as special value (infty)
- Python plugins
- Let default trigger be module name
- Add prefpanes plugin
- Remove unnecessary redundancy in global query log
- Avoid holding a lock while calling plugin code
- Files · File item completion
- Jetbrains projects · Python 3.12 problems
- Python plugins · PyPluginLoader · Do not hold GIL while emitting
finishedsignal - Timers · Disable auto input action text
- cliff · Ignore plugin release commits
- Remove unreleased changes from changelog
- PacMan · Add maintainer
- Jetbrains projects · Global query handling
- VSCode projects · Support workspaces and singlefile recents
- Jetbrains projects · Debounce projects cache update
- Run calls to
items()threaded
- Chromium · GCC13 builds
- PacMan · Query context variable
- Pass · Pass generate could have empty location
- Change motivational text in plugins tab placeholder widget
- Bitwarden · Add maintainer
- Jetbrains projects · Update readme
- Albert · Show composed dir icon on albert dirs
- Files · Default to case insensitive matching for fs browsers
- Spotify · Add open settings action on error items
- Widgets BoxModel
- Linear-gradient brush support
- Add ubuntu prototype theme
- Link to extension website
- Widgets BoxModel · Correct
input_hint_colordefault
- Update FAQ link
- Albert · Translation correction
- Chromium
- Log reason on favicons db copy failure
- Add some more data directories
- Scan for profiles on init only if none configured
- Files
- Drop static dir mime type
- Do not store mime types, fetch mimetype on demand
- Spotify · Update german translations
- Widgets BoxModel · Update README
- Applications
- macOS · Use default terminal for *.command files
- Add cosmic-term support
- Support guake terminal
- Chromium
- [BREAKING] · Add profile selection combo box
- Add option "Show favicons"
- Clipboard · Use clipboard emoji icon
- Widgets BoxModel · Cache icon by item identifier
- RankedQueryHandler · Do not call rankItems on main thread
- Segfault on plugin selection of unloaded plugin
- Bitwarden · Return type and attr error
- Clipboard · Deadlock on clipboard change
- Date and time · Timer not started/stopped in same thread
- Python plugins
- Empty debug line
- Missing dependencies are not automatically installed
- Duplicate interpreter config dump
- Applications · Update translations
- Bluetooth · Add README link
- Chromium
- Add README
- Platform specific base dirs
- Python plugins
- Update translations
- Comment config dumps
- Applications · Non persistent and ineffective applications options
- Python plugins
- Pip freeze parsing
- Reset venv when Python version changed
- Handle errors of process executions
- Give the albert namespace a docstring
- Remove reference to ExtensionRegistry
- Codesign bundle with local certificate
- Python plugins
- Instantiate plugins on main thread
- Drop dynamic dependecy installation
- Misleading tooltip in query widget
- Segfault on initial run
- Date and time
- "Show date on empty query" not persisent
- Segfaults due to timers controlled from different threads
- Fix missing graphemeDefaultBrush docs
- Remove leftover icon topic
- Group
Appfunctions
- gitlint · Ignore body min length
- [BREAKING] Tokenize strings using unicode word boundaries
- Add 🕚 inputhint to global query wildcard
- Add Homebrew plugin
- Arch Linux Wiki · Infinite scrolling
- Documentation · Allow custom docsets
- GitHub
- Use a placeholder icon to impove visual appearance
- Lazily fetch pages (Infinite scroll)
- Kill Process · Support all platforms
- Obsidian
- Flatpak app support
- Snapcraft support
- Python plugins · Add firefox plugin
- Spotify · Lazy item generation (Infinite scroll)
- Widgets BoxModel
- Customizable window properties
- Drop "quit on close" option
- Wikipedia · Infinite scrolling
- [BREAKING] Drop property.h
- [BREAKING] Rename
bindtobindWidget - [BREAKING] Drop
utilnamespace - [BREAKING] Drop
tryCreateDirectory - [BREAKING] Expose the
UsageScoringclass - [BREAKING] Remove color macros from public interface
- [BREAKING] Simplify
UsageScoringAPI - [BREAKING] Add asynchronous query handling support
- [BREAKING] BackgroundExecutor · Remove any logging or exception handling
- Make
template<typename T> T* extension(const QString &id)const - [BREAKING] Move UsageScoring into the Query
- [BREAKING] Add object oriented global
Appinterface - [BREAKING] Remove const from global query handlers parameter
- [BREAKING] Add
GeneratorQueryHandlerclass - [BREAKING] Drop
GlobalQueryHandler::handleGlobalQuery - [BREAKING] Rename
QuerytoQueryContext - [BREAKING] Rename
ThreadedQueryHandlertoRankedQueryHandler - Add class
AsyncGeneratorQueryHandler - [BREAKING] Rename
QueryContext::stringtoQueryContext::query - Make
QueryContext::isValidthread-safe - Asynchronous PluginInstance initialization
- [BREAKING] PluginInstance · Remove keychain API
- [BREAKING] Facade
ExtensionRegistrybehindAppinterface - [BREAKING] Redesign icon API
- Python plugins · [BREAKING] · Python plugin interface v5.0
- Calculator · Initialize calculator in background thread
- Documentation · Asynchronous initialization
- Python plugins · Asynchronous plugin initialization
- No tray icon on xdg platforms
- Taborder in settingswidget
- QueryResults · Proper tr context
- OAuth · Do not silently fail on incorrect credentials
- Prevent segfaults on plugin unload while window is visible
- GlobalQuery · Threading bugs
- Replace leftover bool ref stop token
- Add icon.h to header file set
- Use clang for dedicated plugin test builds
configWidgetcall on unloaded plugin- Workaround Qt 6.4 deadlocks
- Dead link in CONTRIBUTING.md
- Mute shadow warnings
- Mute -Wunused warnings
- CopyQ · Invalid return type
- Debug · Workaround GCC13 bugs
- Docker · Proper tag handling
- Documentation · Extract docsets into the docset directory
- Emoji · Loading error when locale is 'C'
- Files · Apply mime filter to the root item.
- GitHub
- Fix typos in logs
- Avoid writing keychain on initial read
- Workaround GCC13 bugs (Ubuntu 24.04).
- Obsidian · Backward compatibility
- Pass · Correct license
- Python plugins
- Python AST API dropped attr
Str - Fix virtual dispatch of
GlobalQueryHandler::items - Fix virtual dispatch of
IndexQueryHandler::items - Fix virtual dispatch of
IndexQueryHandler::rankItems - Use regular exceptions instead of pybind11_fail
- Python AST API dropped attr
- Spotify
- Broken error icon lookup
- Avoid unneccesary writes to keychain on initial read
- Widgets BoxModel
- Correct window_shadow_size literal
- Segfaults on null query
- Derive palette from app instead style
- Structure by topics
- Update doxygen topic structure
- Update query handlers documentation
- Update ALBERT_PLUGIN macro documentation
- Fix maintainers field documentation
- Document how to handle plugin initialization failure
- Add a note on GCC-13 generator bugs
- PluginLoader · Move contract into class description
- Reorder changelog groups
- Documentation · Document the custom docset feature
- Files · Fix tests according to d033020b89f0306eaf09fdf95070e1697ed7c633
- Python plugins · Update tests
- Mute
-Wshadowwarnings - docker · Build test images with Clang and Ninja
- test · Mute
-Wunused-resultwarnings - changelog · Group plugin commits if >1
- Rename plugin path to commandline
- Mute clazy-fully-qualified-moc-types
- Print theme search paths on start
- RateLimiter · Async acquire support
- Drop Widgetsboxmodel QSS frontend
- Git ignore ".qtcreator"
- StandardIconType · Add values and documentation
- Telemetry · Derive QObject, use proper context objects
- Remove global engine access on item activation
- RPCServer · Avoid using QtPrivate
- QueryEngine · Emit signal per handler type
- Separate plugin macros from
config.hintoplugin.h - Do not export privately linked dependencies
- docker · Pull qcoro dependencies
- GlobalQuery · Print diag and add results of valid queries only
- Update translations
- CI · Update macos build system
- CI · Add QCoro dependency
- Run dedicated plugin test builds in docker files
- Do not print plugin exceptions to the root logging category
- Update changelog template
- Revert to GCC builds
- Do not send anything if users opt out telemetry
- AUR
- Adapt to API changes
- Add CODEOWNERS
- Adapt icon API changes
- Albert
- Adapt API changes
- Use new icon API
- Applications
- Adapt API changes
- Drop soft hyphen removal
- Use new icon API
- Arch Linux Wiki
- Adapt to API changes
- Add CODEOWNERS
- Adapt icon API changes
- Bitwarden
- Adapt to API changes
- Add CODEOWNERS
- Adapt icon API changes
- Bluetooth
- Adapt API changes
- Use new icon API
- Caffeine
- Adapt API changes
- Use new icon API
- Calculator
- Adapt API changes
- Use new icon API
- Chromium
- Adapt API changes
- Use new icon API
- Clipboard
- Adapt API changes
- Remove unused include
- Adapt new icon API
- CoinGecko
- Adapt to API changes
- Add readme
- Add CODEOWNERS
- Adapt icon API changes
- Contacts
- Adapt API changes
- Remove legacy shared_ptr holder
- Adapt new icon API
- CopyQ
- Adapt to API changes
- Add CODEOWNERS
- Adapt icon API changes
- Date and time
- Adapt API changes
- Adapt new icon API
- Debug
- Adapt API changes
- Adapt new icon API
- Dictionary
- Adapt API changes
- Adapt new icon API
- Docker
- Adapt to API changes
- Add CODEOWNERS
- Adapt icon API changes
- Documentation
- Add README content
- Document the custom dataset feature
- Adapt API changes
- Drop legacy workaraound for lacking move semantics
- Adapt new icon API
- Emoji
- Increase interface version
- Add CODEOWNERS
- Adapt icon API changes
- Files
- Adapt API changes
- Fix test
- Remove unused include
- Adapt new icon API
- GitHub
- Adapt API changes
- Move all saved search handling into root handler
- Adapt further API changes
- Use qtkeychain directly
- Adapt new icon API
- GoldenDict
- Adapt to API changes
- Add CODEOWNERS
- Adapt icon API changes
- Hash Generator
- Adapt API changes
- Adapt new icon API
- Jetbrains projects
- Adapt to API changes
- Add CODEOWNERS
- Adapt icon API changes
- Kill Process
- Adapt to API changes
- Add CODEOWNERS
- Adapt icon API changes
- Locate
- Adapt to API changes
- Add CODEOWNERS
- Adapt icon API changes
- Media player remote
- Adapt API changes
- Adapt new icon API
- Menu bar
- Adapt API changes
- Adapt new icon API
- Obsidian
- Fix range-loop-detach warning
- Print found vaults to console
- Adapt API changes
- Index all vaults on change
- Adapt further API changes
- Adapt new icon API
- PacMan
- Adapt to API changes
- Add CODEOWNERS
- Adapt icon API changes
- Pass
- Adapt to API changes
- Add CODEOWNERS
- Adapt icon API changes
- Pomodoro
- Adapt to API changes
- Add CODEOWNERS
- Adapt icon API changes
- Python Eval
- Adapt to API changes
- Adapt to API changes
- Add CODEOWNERS
- Adapt icon API changes
- Python plugins
- Drop plugin duckduckgo
- Remove unused include
- Update plugins
- SSH
- Adapt API changes
- Adapt new icon API
- Snippets
- Adapt API changes
- Avoid
-Wunused - Update translations
- Adapt new icon API
- Spotify
- Adapt API changes
- Use detail::DyamicItem
- TrackItem · Show only authors in description
- ArtistItem · Show followers and genres in description
- AlbumItem · Show only artists in description
- PlaylistItem · Show only owner in description
- ShowItem · Show only publisher in description
- EpisodeItem · Show only description in description
- AudiobookItem · Show only authors in description
- Further adaption of API changes
- Use qtkeychain directly
- Adapt new icon API
- Syncthing
- Adapt to API changes
- Add CODEOWNERS
- Adapt icon API changes
- System
- Adapt API changes
- Remove unused include
- Adapt new icon API
- TeX to Unicode
- Adapt to API changes
- Add CODEOWNERS
- Adapt icon API changes
- Time zones
- Adapt API changes
- Adapt new icon API
- Timers
- Adapt API changes
- Adapt new icon API
- Translator
- Adapt to API changes
- Add CODEOWNERS
- Adapt icon API changes
- URL Handler
- Adapt API changes
- Adapt new icon API
- Unit Converter
- Adapt to API changes
- Add CODEOWNERS
- Adapt icon API changes
- VPN
- Adapt API changes
- Adapt new icon API
- VSCode projects
- Adapt to API changes
- Add CODEOWNERS
- Adapt icon API changes
- VirtualBox
- Adapt to API changes
- Add CODEOWNERS
- Adapt icon API changes
- Web search
- Adapt API changes
- Adapt new icon API
- Widgets BoxModel
- Adapt API changes
- Mute missing context object warning
- Take namespace of the old WBM frontend
- Adapt new icon API
- Wikipedia
- Add CODEOWNERS
- Adapt icon API changes
- X Window Switcher
- Adapt to API changes
- Add CODEOWNERS
- Adapt icon API changes
- Add maintainer
- Zeal
- Adapt to API changes
- Add CODEOWNERS
- Adapt icon API changes
- Workaround hidpi icon Qt bug
- QIconEngineAdapter · Remove drawing code
- triggersqueryhandler · Add fuzzy support
- tray · Install the app tray icon on xdg
- Built-in fallback theme support
- PluginQueryHandler · Add 'Load'/'Reload' actions
- User customizable PATH
- triggersqueryhandler · Properly sync triggers
- rankitem · Correct inverted text length in operator<
- globalquery · Remove leftover explicit comparator
- Update wayland faq link
- rankitem · Avoid multiple string allocations in comparison (🚀200%)
- globalqueryhandler · Instant response times in handleTriggerQuery
- Add
util::percentEncoded - Add
util::percentDecoded - [BREAKING] Add customizable and typesafe icon support
- PluginInstance · [BREAKING] Asynchronous keychain access
- cmake-macros · Add missing metadata fields
- plugininstance · Add \ref, remove \since, some updates.
- extensionplugin · Add doxygen references
- TriggerQueryHandler · Update doxygen documentation
- Add api group to gitlint
- Remove justfile
- Add git cliff configuration
- Move frontend resources into frontend repository
- Scoring · Fetch exceptions thrown from items
- Replace about text with list of links
- Notify on major version change
- Albert · Use paths of app data locations as input action text
- Applications · Add sakura terminal support
- Bluetooth · Linux/BlueZ support
- Bluetooth · Device icon based on class of device
- Clipboard · Add fuzzy support
- Documentation · icon · Pixel density dependent icon
- Jetbrains projects · Handle multiple config dir prefixes (#4)
- Jetbrains projects · Update icons to 2025 (#5)
- Python Eval · Customizable list of modules to preload
- VirtualBox · Use SDK manually installed into venv
- Applications · macOS · Index apps in $HOME/Applications
- Calculator · Remove completion on evaluation errors
- Emoji · Do not lower others while capitalizing 1st char
- GitHub · Correct endpoint in "Show on GitHub" action
- Menu bar · Mutex item acces
- PacMan · Remove trigger from input action
- Python Eval · Remove trigger from input action
- Python plugins · Add missing
setTriggertrampoline - System · Strict standard conform array initialization
- Spotify · Select smallest picture greater than 128px
- Python plugins · [BREAKING] · Reflect core API changes in the Python API.
- Python plugins · Unify and update links
- Python plugins · Polish stubfile. Minor fixes.
- Python plugins · IndexQueryHandler · Mark final methods
@final
- Python plugins · Add additional tests
- AUR · Add maintainer
- AUR · Add README
- AUR · Adopt v4 API changes
- AUR · Adopt v4 StandardItem API changes
- Albert · icon · Adapt to updated icon API
- Applications · icon · Adapt to updated icon API
- Applications · Make exec_args usable on all platforms
- Arch Linux Wiki · Adopt v4 API changes
- Arch Linux Wiki · Adopt v4 StandardItem API changes
- Bitwarden · Add README
- Bitwarden · Adopt v4 API changes
- Bitwarden · Adopt v4 StandardItem API changes
- Bluetooth · Platform abstraction
- Bluetooth · icon · Adapt to updated icon API
- Caffeine · icon · Adapt to updated icon API
- Calculator · icon · Adapt to updated icon API
- Chromium · icon · Adapt to updated icon API
- Clipboard · icon · Adapt to updated icon API
- CoinGecko · Adopt v4 API changes
- CoinGecko · Adopt v4 StandardItem API changes
- Contacts · Remove unused code
- Contacts · icon · Adapt to updated icon API
- Contacts · Avoid copyingitems vector on indexing
- CopyQ · Adopt v4 API changes
- CopyQ · Adopt v4 StandardItem API changes
- Date and time · icon · Adapt to updated icon API
- Debug · icon · Adapt to updated icon API
- Dictionary · icon · Adapt to updated icon API
- Docker · Adopt v4 API changes
- Docker · Adopt v4 StandardItem API changes
- DuckDuckGo · Adopt v4 API changes
- DuckDuckGo · Adopt v4 StandardItem API changes
- Emoji · Add maintainers
- Emoji · Adopt v4 API changes
- Emoji · Adopt v4 StandardItem API changes
- Files · icon · Adapt to updated icon API
- GitHub · icon · Adapt to updated icon API
- GitHub · Adapt to async keychain API
- GoldenDict · Add README
- GoldenDict · Adopt v4 API changes
- GoldenDict · Adopt v4 StandardItem API changes
- Hash Generator · icon · Adapt to updated icon API
- Jetbrains projects · Add maintainers
- Jetbrains projects · Adopt v4 API changes
- Jetbrains projects · Add README
- Jetbrains projects · Adopt v4 StandardItem API changes
- Kill Process · Add maintainer
- Kill Process · Adopt v4 API changes
- Kill Process · Adopt v4 StandardItem API changes
- Locate · Adopt v4 API changes
- Locate · Adopt v4 StandardItem API changes
- Media player remote · icon · Adapt to updated icon API
- Menu bar · icon · Adapt to updated icon API
- Obsidian · icon · Adapt to updated icon API
- PATH · icon · Adapt to updated icon API
- PacMan · Add README
- PacMan · Adopt v4 API changes
- PacMan · Adopt v4 StandardItem API changes
- Pass · Add maintainers
- Pass · Adopt v4 API changes
- Pass · Adopt v4 StandardItem API changes
- Pomodoro · Adopt v4 API changes
- Pomodoro · Adopt v4 StandardItem API changes
- Python Eval · Adopt v4 API changes
- Python Eval · Adopt v4 StandardItem API changes
- Python plugins · Drop color plugin
- Python plugins · Drop dice_roll plugin
- Python plugins · Use smart_holders for items
- Python plugins · >3.9 typing annotations
- Python plugins · Update to pybind v3.0.1
- Python plugins · Refactor and minor optimizations.
- SSH · icon · Adapt to updated icon API
- Snippets · icon · Adapt to updated icon API
- Spotify · icon · Adapt to updated icon API
- Spotify · Adopt async keychain API
- Syncthing · Adopt v4 API changes
- Syncthing · Adopt v4 StandardItem API changes
- System · icon · Adapt to updated icon API
- TeX to Unicode · Add maintainers
- TeX to Unicode · Adopt v4 API changes
- TeX to Unicode · Adopt v4 StandardItem API changes
- Time zones · icon · Adapt to updated icon API
- Timers · icon · Adapt to updated icon API
- Translator · Adopt v4 API changes
- Translator · Adopt v4 StandardItem API changes
- URL Handler · icon · Adapt to updated icon API
- Unit Converter · Add maintainers
- Unit Converter · Adopt v4 API changes
- Unit Converter · Adopt v4 StandardItem API changes
- VPN · icon · Adapt to updated icon API
- VSCode projects · Add maintainer
- VSCode projects · Adopt v4 API changes
- VSCode projects · Adopt v4 StandardItem API changes
- VirtualBox · Adopt v4 API changes
- VirtualBox · Adopt v4 StandardItem API changes
- Web search · icon · Adapt to updated icon API
- Widgets BoxModel · icon · Adapt to updated icon API
- Widgets BoxModel · Adopt changes of async keychain
- Widgets BoxModel QSS · icon · Adapt to updated icon API
- Widgets BoxModel QSS · Adopt API changes of async keychain
- Wikipedia · Adopt v4 API changes
- Wikipedia · Adopt v4 StandardItem API changes
- X Window Switcher · Adopt v4 API changes
- X Window Switcher · Adopt v4 StandardItem API changes
- Zeal · Adopt v4 API changes
- Zeal · Adopt v4 StandardItem API changes
- Fix plugins list view borders in breeze styles
- github
- Add saved search action "Show on GitHub"
- obsidian
- Fix obsidian.json path on xdg platforms
- widgetsboxmodel
- Fix window property signals
- Add plugin: Obsidian
- Let
runAppleScriptreturn the result and throw on error - Add maintainers to metadata
- Move InputHistory to namespace
detail
- clipboard
- Specialize behavior of different platforms Qt on macOS does not deliver clipboard changes reliably. Poll on macos. React on clipboard changes everywhere else.
- copyq
- v3 Add macOS support
- kill
- Add platform filter.
- obsidian 🆕
- python
- API v3.1 Add additional metadata fields
- md_maintainers
- md_readme_url
- md_platforms
- API v3.1 Add additional metadata fields
Fix pre Qt6.7 builds not supporting QString spaceship operator
- Move
applyUsageScoreintoTriggerQueryHandler GlobalQueryHandler::applyUsageScorepass by reference
- python Add plugins as submodules
- ssh v10
- Allow customizing the ssh command
- Allow customizing the remote command
- locate v3
- Drop update database action
- Filter using
Matcher - Use system file icons
- contacts
- Use AppleScript to open contacts which allows setting a selection.
- github
- Avoid downloading icons multiple times
- python
- Use pip freeze instead of inspect to check for existing packages
Adds minor API improvements and new plugins Spotify (WIP) and VSCode.
- Add construction site emojis to beta plugins title
- Move
Actionintoitem.h. Apply perfect forwarding in ctor. - API: Add
QString albert::util::runAppleScript(const QString &script) - Move DesktopEntryParser from app plugin into private albert API
- files
- Index trash item also by native title
- Fix link paths
- github
- Fix translations of listview headers
- Drop fixed listview height
- mediaremote
- v7
- Drop public API
- Reintroduce multi player support
- Nice composed icons
- v7
- spotify 🆕
- vscode_projects 🆕
- translators Improve description
- Add optional field "readme_url" to metadata. Add a link in the plugin settings if it is available
- Fix dysfunctional url scheme handler
Fix release.
Hotfix release.
Hotfix gitmodules private link causing all Linux builds to fail
- New GitHub plugin
- Next step in making the API more developer friendly
- Move AppQueryHandler into plugin
- c++23 👋
- Make
PluginLoaderasynchronous StandardItemchanges- Make
input_action_textthe last constructor argument - Apply perfect forwarding in constructor and shared_ptr factory.
- The default behavior of
inputActionText()is to returnname()ifinput_action_textis the null string. Setinput_action_textexplicitly to the empty string to get no input action text at all.
- Make
- Return
text()inItem::inputActionTextbase implementation - Remove frontend related classes from public API
- Add
albert::util::toQString(const std::filesystem::path&) - Simplify messagebox functions
- Add modal parent parameter to messagbox utils
- Drop
makeRestRequestfromnetworkutil.h - Move
ExtensionPluginintoutilnamespace - Move
TelemetryProviderinto private namespace - Rename
albert::util::FileDownloadertoalbert::util::Download - Add
shared_ptr<Download> albert::util::Download::unique(const QUrl &url, const QString &path) - Move plugin dependecies into
albert::utilnamespace
- application
- Moved from core to plugin
- applications
- Read env variable
ALBERT_APPLICATIONS_COMMAND_PREFIX
- Read env variable
- bluetooth
- Fix MRU order
- caffeine
- Fix completion behavior
- docs
- Index docsets in background thread
- github 🆕
- python
- Check and install missing dependencies before loading plugins
- Add button that opens terminal in activated venv
- ssh
- Fix missing sort in triggered handler
- widgetsboxmodel
- Remove deprecated theme info
- Support F/B bindings for pgdown/pgup
Hotfix index initialization
Fix release.
- Make global and triggered triggersqueryhandler behave the same
- Force plugins to not convert from ascii.
- Move system related functions into
systemutil.h- Remove
void open(const std::string &path); - Remove default param workdir in
runDetachedProcess - Add
long long runDetachedProcess(const QStringList&); - Remove
open(const std::string &path); - Add
open(const std::filesystem::path &path);
- Remove
- Remove
Query::isFinished() - Changes to
albert::util::InputHistory- Add
uint limit() const; - Add
void setLimit(uint); - Support multiline entries (store in JSON format)
- Add
- Add keychain support
- Add
QString PluginInstance::readKeychain(const QString & key) const; - Add
void writeKeychain(const QString & key, const QString & value);
- Add
- Iconprovider add
mask:andcomp:schemes- mask: Mask a given icon given a radius divisor.
- comp: Composes two given icons.
- Move messagebox utils to
messagebox.h - Move utility symbols into
albert::utilnamespace - Add class
albert::util::FileDownLoader - Add class
albert::util::OAuthConfigWidget - Add class
albert::util::OAuth - Add
widgetsutil.h- Add
bindfunction for QCheckBox - Add
bindfunction for QLineEdit - Add
bindfunction for QSpinBox - Add
bindfunction for QDoubleSpinBox - Remove
ALBERT_PROPERTY_CONNECT_*macros
- Add
- Add
networkutil.h- Move
albert::network()toalbert::util::network - Add
waitForFinished(QNetworkReply *reply) - Add
QNetworkRequest makeRestRequest(…)
- Move
- Add CMake macros
albert_plugin_link_qtalbert_plugin_dbus_interfacealbert_plugin_sourcesalbert_plugin_linkalbert_plugin_include_directoriesalbert_plugin_i18nalbert_plugin_generate_metadataalbert_plugin_compile_options
- Add dynamic items feature
- Add interface class
albert::Item::Observer - Add
void albert::Item::addObserver(Observer *observer); - Add
void albert::Item::removeObserver(Observer *observer);
- Add interface class
- Add
albert:scheme handling support- Add
albert::UrlHandlerextension
- Add
- chromium
- Show the full folder path
- datetime
- Add paste action
- Dynamic item support
- docs
- Compose icon with the books emoji to compensate for its 32x32 size
- Fix missing cache location initialization
- Fix directory init mismatch
- mpris → mediaremote
- v6 macOS implementation
- path
- Fix trigger behavior
- snippets
- Fix albertlauncher/albert-plugin-snippets#1
- Use query dependent synopsis
- Allow putting text directly into inputline
- Add input validation in snippet name input dialog
- ssh
- Avoid empty match in global query.
- timer
- Use dynamic item feature
- timezones
- Fix icon and translations
- Use batch add to avoid flicker
- vpn
- Use dynamic item feature
- websearch
- Fix 6.9 breaking tableview behavior
- widgetsboxmodel
- Make use of Query::dataChanged for dynamic items
- Disable window properties for now
- Add input edit mode
- Change animation durations to a more calm behavior
- Drop redundant history text equality check
- Properly reset input history search on hide.
- Restore user input on backward history iteration end
- Fix macOS cmd+backspace behavior in multiline editing
- Fix weird selection glitch
- Fix out of bounds crashes. Trigger length is set async and may exceed the text length.
- Fix null query segfaults
- Fix comboboxes not showing system theme
Hotfix release for the frontends.
- widgetsboxmodel
- Fix uninitialized trigger length causing crashes
- widgetsboxmodel-qss
- Adopt completion bahavior
- Non hiding action support.
- Themesqueryhandler behavior from wbm
Hotfix git submodule urls.
- Organize plugins in submodules.
- Run the empty query on
* - Add 'Open in terminal' action to AppQueryHandler
- Add
albert::Action::hide_on_activation - Add
albert::PluginInstance::dataLocations - Add
albert::show(const QString&) - Add standard message box functions modal to the main window.
- Add
albert::question(…) - Add
albert::information(…) - Add
albert::warning(…) - Add
albert::critical(…)
- Add
-
bluetooth
- Add icons for (in)active/(dis)connected items.
- Add completions.
-
caffeine
- Polish translations of durations.
- Add natural duration spec (eg 1h1m).
- Fix weird trigger completions.
- Fix default trigger matching.
- Add deactivation notification.
- Use special text ∞ in settings.
-
clipboard - Avoid flicker by using batch add.
-
system
- New icon set.
- Update macOS logout command.
-
timer - Remove timers from empty query without hiding the window.
-
vpn - Add icons clearly indicating the state.
-
websearch - New default icon.
-
widgetsboxmodel and widgetsboxmodel-qss
QStyleSheetStyle and its style sheets are a mess to work with and pretty limited. They may be suitable to style dedicated widgets but not for entire UIs. This release lays the foundation for a frontend that is not a pain to work with. The widgetsboxmodel as you know it has been forked to
widgetsboxmodel-qss. But for now it still has the idwidgetsboxmodelid until the prototype is polished enough. The id of the new widgetsboxmodel frontend without style sheets is widgetsboxmodel-ng.- Theme files support.
- Allow multiline input. Shift enter inserts a newline.
- Empahsize the trigger.
- Add context menu to button
- Allow non hiding actions.
- Add a handcrafted, buffered windowframe. Drop glitchy Qt shadow.
- Add option 'Disable input method'.
- Completion and synopsis side by side.
- Handcrafted rounded rects that support gradients.
- Ads settable window properties like colors, margins, sizes and such.
- Put settingsbutton into the input layout. No overlay anymore.
- Always show action to set the current mode first (dark, light).
- Add debug overlay option
- Loads of fixes and mini improvements.
- widgetsboxmodel - Fix dark mode detection on Gnome
- coingecko - Make sure cache location exists
- emoji - Make sure cache location exists
- Fix translation file lookup
- vpn
- Add xdg platform (network manager)
- Listen to state changes
- python.vpn - Archive plugin
- Append _en to the plural files
Hotfix Qt 6.2 backward compatibility (Ubuntu 22.04 builds).
Hotfix #1517
- Fixes and minor improvements
- Update translations
- vpn
- Change icons
- Fix translations
- python
- Redesign the settings widget
- Allow users to reset the venv
- Avoid initializing venv on every start
This is primarily an intermediate release that reverts bad design decisions that make progress difficult.
albert- Remove class
ItemsModel - Remove enum
ItemRoles - Remove
openUrl(const QUrl &url) - Remove
ExtensionWatcher<T> - Add class
ResultItem - Add
const ExtensionRegistry &extensionRegistry(); - Add
tryCreateDirectory(const filesystem::path&) network(): Return reference
- Remove class
albert::ExtensionRegistry- Remove
T* extension<T>(const QString &id)
- Remove
albert::PluginInstance- Remove
ExtensionRegistry ®istry(); - Remove
createOrThrow(const QString &path) - Make
cache/config/dataLocationreturn filesystem::path - Add
extensions()
- Remove
ExtensionPlugin- Add
ExtensionPlugin::extensions()
- Add
albert::MatchConfig- Avoid recurring default separator regex instatiation
- Change field order
albert::Query- Add isActive()
- Return
vector<ResultItem>inmatchesandfallbacks - Return
boolinactivate* - Remove signal
finished - Add signal
matchesAboutToBeAdded - Add signal
matchesAdded - Add signal
invalidated - Add signal
activeChanged
albert::TriggerQueryHandler- Pass queries as reference
synopsis()>synopsis(const QString &query)
albert::GlobalQueryHandler- Pass queries as reference
- Remove param of
handleEmptyQuery
- Rename albert/util.h to albert/albert.h
- python
- Add tests.
- Google Docstring format stub file.
- Python API v3.0. See changelog in stub file for details.
Hotfix backward compatibility.
- Fix device dependent pixmap creation
- Avoid usage of deprecated QStyle::standardPixmap
- applications - Add ghostty
- Add a motivating text in the plugin settings placeholder page
- timer
- Allow h, m, s durations
- Clean obsolete translations
- User timer emoji icon
- caffeine - Fix non-persistent default interval
- menubar - Do not retain NSRunningApplication forever.
- widgetsboxmodel
- Update icon handling
- Do not upscale icons that are smaller than requested
- Draw the icon such that it is centered in the icon area
- chromium - Update bookmark icon
- websearch - Change icon sizes which lead to blurry output
- applications - Change missing terminal link to issues choice
- Add some more precise Match tests
- Hardcode /usr/local/bin into PATH on macos
- Fix Matcher type conversion
- Precompile headers
- chromium - Avoid warnings on emtpy paths
- menubar
- Properly display glyphs
- Fix modifier conversion
- Minor improvements and fixes
- bluetooth - Add open settings action
- widgetsboxmodel - Fix broken input history behavior
- applications - Set ignore_show_in_keys default to true
- clipboard - Fix typo
- path - Show PATH in settings and tr synopsis
- docs - "Fix" mac builds
- Minor improvements around telemetry
- Add variadic
Matcher::match(…)
- python - Interface 2.5
- applications
- Recurse app directories on macos
- Revert back to command based heuristic to find terminals
- menubar - Show hotkeys
- CPack drop qt deploy tool
- Update translations
- Parse cli params asap for faster hotkeys
- menubar - v1.0
- system - Move sleep inhibition in separate plugin
- caffeine - Separate from system
- Actually make use of telemetry and send enabled plugins and activated extensions.
- Add context menu to the plugin list
- En/disable plugin
- Un/load plugin
- Option to sort list by checked state
- Improve testing
- Drop doctest. Use QTest.
- Drop doctest and use QTest
- Enable CTest for better CI
albert- Add
quit() - Add
restart() - Add
open(QUrl url) - Add
open(QString path) - Add
open(filesystem::path path)
- Add
InputHistory- Constructor now optionally takes a path
- Add colors to logging.h
- applications
- Send telemetry about available terminals
- Log warning on unsupported terminals
- Case sensitive desktop ids
- Fix desktop entry shadowing
- Add terminal org.gnome.ptyxis
- bluetooth - Fix warning on language
- files
- Add filebrowser option: Show hidden files
- Add filebrowser option: Sort case insensitive
- Add filebrowser option: Show directories first
- Use QTest
- widgetsboxmodel - Fix weird end of history behavior
- qmlboxmodel - Archive plugin
- applications
- Fix segfaults on Qt 6.8
- Add option "split camel case"
- Add option "use acronyms"
- Add terminals debian-uxterm and com.alacritty.Alacritty
- python - Do not allow site_import
- dictionary - Implement FallbackHandler
- contacts
- Implement IndexQueryHandler
- Index contacts in background
- Use all available names
- Add website addresses actions
- ItemIndex: Fix access to moved item. Skip emtpy IndexItems.
- applications - Search in /System/Cryptexes/App/System/Applications
- files - Fix f-term action failing on spaces
- files - Fix xfce4-terminal
- snippets - Fix typo
- websearch - Create required data directory on start
- syncthing - Use python-syncthing2. python-syncthing is dead.
- unit_converter - Remove future typehints
- calculator_qalculate
- Add option: Units in global query
- Add option: Functions in global query
- python
- Proper venv isolation
- Fix excluding regex breaking aur builds
- No quotes around logs
Hotfix docs plugin cluttering output due to nonunique item id
- Albert license v1.1
- system
- Also match the trigger for sleep inhibition
- Allow changing trigger for sleep inhibition
- docs
- Proper anchor support for all kinds of docsets
- Add the type to the description
- files
- Add option "index file path"
- Also fix persistence for option "case senstive file browsers"
- applications
- Sort terminals list by caseinsensitive name
- Give
QIcon::fromThemeanother try
- Remove const from
GQH::hgqandGQH::heq - Drop
albert::runTerminal. Moved to applications plugin. - Make private property available in subclasses
- Add getter for plugin dependencies
- system:10.0 - Add inhibit sleep feature
- docs:3.17 - Be more tolerant with anchors
- applications:12.0
- Move terminal detection here
- Proper flatpak terminal support
- Add public interface to run terminals
- Proper platform abstraction
- Foundation for xdg-terminal-execute
- Foundation for URL scheme and mime type handlers
- inhibit_sleep Archive. Moved to system plugin.
- docker:3.0 Revert to trigger query handling.
- unit_converter:1.6 Port to API v2
- jetbrains:2.0 - Add Aqua and Writerside
- tex_to_unicode:1.3 Port to v2.3
- Simplify
MatchConfig - Hardcode
error_tolerance_divisorto 4
- chromium
- Avoid initial double indexing
- Fix status message in settings window
- Fix warnings on empty paths
- bluetooth - Support fuzzy matching
- urlhandler - Use
albert::openUrl.QDesktopServices::openUrlfails on wayland.
- Port applications settings to new id
- Fix telemetry
- snippets:5.4 Show a snippet preview in description.
- Add "open terminal here" to app directory items
- Hotfix #1408
- python:4.5 Update python stub file
- goldendict:1.5 Remove breaking type hints
- python:4.4 Revert back to using pybind submodule (v2.12.0)
- Ignore soft hyphens in lookup strings
- Add TriggersQueryHandler builtin handler
- Drop PluginConfigQueryHandler
- Ignore order of query words
- Do not run fallbacks on empty queries
- Allow unsetting hotkey on backspace
- Move about into general tab
- Use a button for hotkeys such that tab order is usable
- Cache icons in the fallback handler to avoid laggy resize
- Set 700 on albert dirs
- Use same config location and format on all platforms.
- Show message box on errors while loading enabled plugins
- Make openUrl working on wayland by using xdg-open
- Loads of changes around the project structure
AUTOMOC,UIC,RCCper target- Structure sources in folders
- Flatten headers
- No paths in core source files (rather lots of include dirs)
- Finally proper target export such that plugin build in build tree as well as separate projects
- Add custom target
global_lupdate
- CMake
albert_plugin(…)modifications- Add
QTparameter - Add
I18N_SOURCESparameter SOURCE_FILES>SOURCESI18N_SOURCE_FILES>I18N_SOURCESINCLUDE_DIRECTORIES>INCLUDELINK_LIBRARIES>LINK- Make
SOURCESoptional. Specify source conventions:include/*.h,src/*.h,src/*.cpp,src/*.mm,src/*.uiand<plugin_id>.qrc
- Add
- Drop
METADATAthe metadata.json is a mandatory convention now. - Drop
TS_FILES. Autosource from 'i18n' dir given a naming convention.<plugin_id>.tsand<plugin_id>_<ui_language>.ts - Add CMake option
BUILD_PLUGINS
- General
- Move
Q_OBJECTintoALBERT_PLUGINmacro - Remove app functions from API
- Rename
albert.htoutil.h albert::networkManager->albert::network- Add convenience classes for plugin interdependencies
- Allow
RankItems to be created using aMatch - Revert back to per plugin translations. Plugins shall be self contained modules and in principle be packagable in a separate package.
- Let
QtPluginLoaderautomatically load translations if available. - Add finished and total count to translations metadata
- User per target compile options
- Add
havePasteSupport() - Remove
openIssueTrackerfrom interface - Separate and improve
ALBERT_PLUGIN_PROPERTYmacrosALBERT_PROPERTY_GETSETALBERT_PLUGIN_PROPERTY_GETSETALBERT_PROPERTY_CONNECT_SPINBOX- Add param in property changed signal
- Move
PluginInstance- Add
{cache,config,data}Location. Checks are up to the clients. - Add
createOrThrowas a utility function for the above functions. - Add weak refs for
PluginLoaderandExtensionRegistry - Drop convenience functions like
id,name,description. - Drop
initialize/finalize - Registering extensions can fail
- Auto register root extensions
- Add
- Changes to icon provider API
- Add
QIconsupport - Make it free functions
- Remove caching
- Returned size can be smaller than
requestedSize, but is never larger.
- Add
Query, engine and handlers- Handle handler configuration in core (trigger, fuzzy, enabled).
Remove the getters, have only setters to update plugins.
- Add
TriggerQueryHandler::setUserTrigger - Remove
TriggerQueryHandler::trigger() - Remove
TriggerQueryHandler::fuzzyMatching()
- Add
- Do not allow users to disable triggered query handlers. This may end up in states where plugins are loaded but actually not used. Also some handlers may rely on them to be there, like e.g. the files global handler redirects tabs to the triggered handlers.
- Remove
constfrom handleTriggerQuery - Support ignore diacritics
- Support ignore word order
- Make
Querycontextually convertible toQString - Unify query interface, no more global- and triggerquery
- Add parameterizable
Matcher/Matchclass - Add dedicated empty query handling
Empty patterns should match everything. For global queries that's too
much. For triggered queries it is desired though. Since a lot of global
query handlers relay the
handleTriggerQuerytohandleGlobalQueryit is not possible to have both. This introduces a dedicated function for GlobalQueryHandlers that will be called on empty queries:
- Handle handler configuration in core (trigger, fuzzy, enabled).
Remove the getters, have only setters to update plugins.
- widgetsboxmodel - Use QWindow::startSystemMove instead QWidget:move for Wayland Support
- websearch
- Add fallback option
- Add GPT to default engines
- Add fallback section.
- Allow inline editing of fallback and trigger withough using the search engine widget.
- Use matcher for more tolerant queries
- Complete to trigger instead of name
- timezones
- timer
- telegram - Archive failed telegram quick access approach
- path - Rename from 'terminal'
- system - System commands update for KDE Plasma 6
- ssh - Allow params only in triggered handler
- sparkle - Archive for now
- snippets - Check if paste is supported at all
- qmlboxmodel - Port
- python
- Namespace plugin id
- Compensate the API changes gracefully to defer a breaking API change
- Ship stub file with the plugin
- Add buttons for stubfile and user plugin dir
- API 2.3
- Deprecate obscure module attached md_id. Use PluginInstance.id.
- Expose function albert.havePasteSupport
- Expose class albert.Matcher
- Expose class albert.Match
- Expose method albert.TQH.handleTriggerQuery
- Expose method albert.GQH.handleGlobalQuery
- albert.PluginInstance:
- Add read only property id
- Add read only property name
- Add read only property description
- Add instance method registerExtension(…)
- Add instance method deregisterExtension(…)
- Deprecate initialize(…). Use init(…).
- Deprecate finalize(…). Use del(…).
- Deprecate init extensions parameter. Use (de)registerExtension(…).
- Auto(de)register plugin extension. (if isinstance(Plugin, Extension))
- albert.Notification:
- Add property title
- Add property text
- Add instance method send()
- Add instance method dismiss()
- Minor breaking change that is probably not even in use: Notification does not display unless send(…) has been called
- mpris - Rewrite using xml interface files
- exprtk - Archive exprtk prototype
- docs
- Fix XML based docs.
- Do not upscale icons
- Fix leak on plugin unloading
- dictionary - Drop resources, use Dictionary.app icon
- datetime
- Separate timetzonehandler
- Add "show_date_on_empty_query" option
- clipboard
- Check if paste is supported at all
- Use albert::WeakDependency
- chromium
- Add completion
- Display bookmark folder
- bluetooth New extension on macos
- Enable disable Bluetooth
- Connect to paired devices
- applications
- Add non localized option on macos
- Merge applications_macos and applications_xdg
- Add completion
- All python plugins: Minor fixes and port to API 2.3
- zeal - Add fallback extension
- wikipedia - Add fuzzy search support
- tr - Check paste support
- timer - Move to archive
- syncthing - Initial prototype
- goldendict - Support flatpaks and goldendict-ng
- emoji - Check paste support
- i18n
- Make fallback order settable in new query tab.
- Load native plugins threaded.
- Add --no-load cli param
- Use hashmap and avoid exceptions. Twice as fast 🚀
- Add german translation
- Make "Show settings" action the default for plugin items
- Change frontend interface design
- drop extensions() from PluginInstance interface. Extensions can now bei registered dynamically at any time.
- Reduce the plugin system interfaces to the bare minimum
- Allow hard plugin dependencies.
- Private destructors for interfaces
- Refactoring
- ExtensionRegistry add > registerExtension
- ExtensionRegistry remove > deregisterExtension
- Make UI strings in the metadata required.
- Allow plugins to have public interfaces
- Revert to authors. Drop maintainers. (plugin metadata)
- Remove polymorphism in PluginInstance id/name/description
- Remove dynamic allocation of cache/config/dataDir()
- Drop template parameter QOBJECT
- Frontend is not an extension
- Support localized metadata
- CMake interface
- Drop long_description from metadata
- Add TS_FILES parameter to albert_plugin macro.
- Revert back to json metadata file again
- Complete metadata using cmake project details
- Move Qt::Widgets into the public link interface
- Support i18n
- qmlboxmodel archive wip
- widgetsboxmodel
- Fix animation on linux
- Dark theme support
- Themes update
- Reproducible style (fusion)
- Fix history search
- Move persistent window position to state
- Clear icon cache on hide
- Archive unlicensed themes
- Remove "Show fallbacks on empty result" option
- Drop fonts from themes
- websearch:8.0
- Capital You_T_ube
- Add Google translate default engine
- ssh:8.0
- Reduce complexity of this overengineered plugin
- Remove quick connect
- Remove known hosts
- Remove file watchers (configs change not that often)
- remove indexer mutexes
- remove fuzzy index
- Reduce complexity of this overengineered plugin
- snippets:5.0
- Public extension interface "Add snippet"
- qmlboxmodel:3.0
- Archived
- python
- Open external links in config labels by default
- API v2.2
- Drop source watches. a plugin provider cant just reload without notifying the plugin registry
- API 2.2
- PluginInstance.configWidget supports 'label'
- doc is not used anymore, since 0.23 drops long_description metadata
- md_maintainers not used anymore
- md_authors new optional field
- dictionary:3.0 Former platform_services
- Rename plugin platform services to dict
- clipboard:3.0
- use snippets interface
- applications_macos:5.0
- Use KVO to track NSQuery results
- virtualbox:1.6 Add info on vboxapi requirement
- docker:2.0 Show error on conn failure.
- pomodoro:1.5 Fix notifications
- inhibit_sleep:1.0 Similar to caffeine, theine, amphetamine etc…
- Prepend albert to logging categories, default filter debug
- Remove logging rules cli arguments Dont work on some systems and there is QT_LOGGING_RULES for it
- Differentiate terminator terminals suffering bug 660
- mpris:2.0 Ported
- Remove the visual warning on crashes.
- Remove autostart option
- Add "report" RPC
- python:2.1.0 - Improve UX while installing dependencies
- calc:1.4 - Threadsafe and aborting calculations
- system:1.8 - Dont prompt on gnome session logout
- app_xdg:1.8 - Use Ubuntu gettext domains
- bitwarden - Add copy-username action
- Fix missing smooth transform in icon provider
- Add style information to report
- Use X-GNOME-Autostart-Delay
- Add proper unix signal handling using self pipe trick
- Revert printing to logfile
- Give enough time to connect to other instance.
- system:1.8 - Dont prompt on gnome session logout
- wbm:1.6 - Remove unnecessary cast that may introduce segfaults
- app_xdg:1.8 - Use Ubuntu gettext domains
- python - Fix links in stub
Let RPCServer take care of crash reports. This is a hotfix to remove the recurring crash report on start, if the app is run more than once, e.g. because the session manager restores a session including albert, but albert is also configured to be autostarted.
- Hotfix create missing application paths
- Fix pixmaps path
- qml Fix version branching logic
- CI/CD: Fix path in sed expression
- sparkle Add macos updater plugin prototype
- jetbrains Add RustRover editor
- Add missing "-executable=" for macdeployqt plugin parameters
- py Hotfix: Workaround https://bugreports.qt.io/browse/QTBUG-117153
- CI/CD: Appcast prototype
- Store log in cache dir
- Add loadtype NOUNLOAD There are some plugins that dont like to be unloaded (Sparkle, Python). Add a mechanism to let plugins prohibit users to unload it at runtime.
- python Fix 6.5.2 only QLogCat quirks. Fixes arch builds
- CD: upload on tag
- Revert. NO_SONAME makes troubles on other platforms.
- Hotfix fixing RPM based builds
- Restore 6.2 backward compatibility
- Proper tab navigation in handler widget
- NativePluginProvider: Use absolute file paths.
- files Fix "rel. dirpaths of depth 1 have dot prepended" issue
- docs Fix recent changes to download urls
- qalc Fix tab order
- CMake: On macOS include the macports lookup path
- Fix segfaults on busywait
- Hardcode /usr/local/bin to PATH
- Move last report ts from settings to state
- Add iconlookup in /usr/local/share although not standardized
- qml Add hack around lacking DropShadow.samples in Qt <6.4
- apps_macos
- Find all apps in home dir
- Keep apps up to date unsing online search
- Localized app names
- Add prefpanes
- docs Disable build on macOS. Licensing does not allow usage on macOS.
- files Add emtpy trash action on macos
- muparser Archive muparser. One calculator is enough.
- qml Fix shadow clipping
- qml Fix clear on hide breaking history search
- goldendict Fix import issue
- pass Add OTP feature
- docs
- Add cache for docset list
- Use find_program to find brew for ootb cmake config
- muparser Use find_program to find brew for ootb cmake config
- python
- Silently skip dirs and files that are no python modules
- iid v2.1: Add config facilities
- qalcualte Use find_program to find brew for ootb cmake config
- qml Add Cmd/Ctrl+Enter/Return to show actions
- snippets Port old snippets
- googletrans Archive. py-googletrans is broken.
- translators Add "translators" plugin
- emoji Add "Use derived emojis" option
- dice_roll iid 2.0
- Dont show version notification before app is fully initialized
- Fix logging filters
- Proper database move
- ws Fix websearch breaking users search engines config
- ws Fix websearch not applying icon when selected from file dialog
- Freedesktop notification implementation
- Adopt generic Notification interface on macOS
- Fix Linux paste action
- apps_xdg Default trigger "apps"
- python
- Update notification function
- Fix function warn > warning
- clipboard Add paste action
- pint,yt Archived. Require maintenance
- timer Adopt notification api changes
- Add commandline option for logging filter rules
- Add contour terminal
- Add settingswindow shortcut action for plugin settings
- Add feature copy and paste
- Add "Run empty query" option
- Add handler configurations tab
- Sort fallbacks
- LexSort items having equal score
- Doxygen documentation
TriggerQueryHandler- Add bool
supportsFuzzyMatching() - Add bool
fuzzyMatchingEnabled() - Add void
setFuzzyMatchingEnabled(bool) - Add
QString trigger()(the user configured one)
- Add bool
GlobalQueryHandler- Add
applyUsageScore(…). - Inherit
TQH, i.e. every handler is aTQH
- Add
IndexQueryHandler- Reimplement TQH
fuzzymethods - Default
synopsis<filter>
- Reimplement TQH
- Plugin system
- Revert multithreaded plugin loading (Qt makes problems everywhere)
- Statically inject metadata, use it for PluginInstances
- Move native plugin interface into plugin:: namespace
- Cache/Conf/Data dirs per plugin only (were per Extension)
- Add
PluginInstance::extensions() - Add Template based
ExtensionPlugin(Instance) - Make native plugin a template class to allow subclassing any
QObject
- Frontend:
- Add
Frontend::winId, Move the window quirks to the core - Use app-wide input history file
- Add generic qml/widgets icon provider to interface
- Add generic icon provider, creating icons on the fly
- Add
- Fuctions and macros:
- Put all free functions in
albert.h - Add
openUrlQUrl overload - Add convenience macros for user property definition
- Require albert logging category to pass the name
- Add state file
- Add global settings factory
- Put all free functions in
- Rename
HistorytoInputHistory - Drop
QueryHandlerconvenience class - Drop global
albert.hinclude
- clipboard - Add paste action
- wbm
- Remove option "display icon"
- Appwide input history
- websearch
- Adopt to sorted fallbacks, drop dragndrop in listview
- Add drag'n'drop image feature
- snippets - Add paste action
- qml:2.0 - Revamped QML frontend
- python
- Mimic internal api as close as possible
- Attach logging functions to plugin modules
- Expose albert::setClipboardTextAndPaste
- Expose albert::Notification
- Interface v2.0 stub
- files
- Show filePath instead path in subtext
- Add option for case sentivity of fs browsers.
- Add user property for inline config
- emoji - New generic and platform agnostic emoji implementation
- duckduckgo - Add extension
- color - Add extension
- Add cmd/ctrl + number tab navigation in settings
- Automatically add hpp and qml files to plugin projects
- docs:1.2 - Fix misleading comment in config widget
- tex_to_unicode Fix crash due to wrong type annotation
- emoji Fix #179. Call cacheLocation as method of self.
- Settings window
- Add a new search widget in settingswindow
- Make handlers of all types optionable
- Make window and search widgets tabs in the settings window
- Change usagedatabase location to datadir
- Change IPC socket path to
$CACHEDIR/albert/ipc_socket. Was$CACHEDIR/albert_socket. - Fix triggered global query MRU sort
- Remove
Item::hasActions - Add global config, cache and data location functions
- Change
RankItem::scoretype to float (0,1** - Make queries pointers in handler functions
- Add function to get global network manager
- Use explicit named query handling methods (no parameter overloading)
handleTriggerQueryandhandleGlobalQuery. This reduces confusion, avoids annoying extra boilerplate to disambiguate methods to avoid hide-virtual warnings and serves as a lowest common denominator on a language/naming level since these features may not be supported by script languages (e.g. Python).
- Add
- docs Reduced set of Zeal docsets at hands
- clipboard Clipboard history
- coingecko v1.0
- mathematica iid:1.0 port
- contacts:1.2
- Formatting: Remove Apple specific braces
- snip:1.3
- Add "Add" and "Remove" button in config widget
- Add "Add snippet" item on "add" query
- Add "Remove" action to snippet items
- python:1.8 Adopt API v0.21. New interface version iid 1.0
- Add Extension.cache-, config- and dataLocation
- Expose FallbackHandler
- Proper multi extension registration
- Move interface spec into python stub file (yay!)
- Expose TriggerQueryHandler
- Expose GlobalQueryHandler
- Expose QueryHandler
- Expose IndexQueryHandler
- Expose Item class entirely such that plugins can subclass it
- Use pointer for queries
- Remove global cache/config/data dir functions
- Add stub file for type hinting and documentation in IDEs
- Sort triggerwidget by name rather than id
- Avoid segfaults when setting hotkey failed.
- ws - Fix oversized text in config
- sys:1.6 - Dynamic default commands.
- app_xdg - Remove content margins of settings widget
- system - Add lxqt defaults
- python_eval:1.3 - Fix type of result in item subtext
- locate:1.7 - Fix lambda capture
- api_test - Drop plugin
- aur:1.6 - Fix install action
- jetbrains_projects - handle missing projectOpenTimestamp
- ws - Show space markers in trigger section
- vbox:v1.3 - Port iid:0.5
- dice_roll - iid:0.5 v1.0
- emoji - iid:0.5 v1.0
- system:1.4 Make items checkable and titles customizeable
- Respect whitespaces in rpcs
- wbm Add option "Center on active screen"
- app_xdg Add action "reveal desktop entry"
- files Workaround Qt appending slash to root paths
- bitwarden 1.1 (iid: 0.5)
- vpn Add wireguard to connection types
- pacman Fix out of scope lambda vars
- vpn Add wireguard to connection types
- Update supported terminals (add st and blackbox, remove tilda)
- wbm Hide task bar entry
- ws Add google scholar to defaults
- Tilda support
- Print font in report
- contacts_mac v1.0
- wbm Dont hide window when control modifier is hold
- xdgapps Do not inherit QT_QPA_PLATFORM to launched apps
- Clear icon cache if unused for a minute.
- wbm Postpone query deletion until hide event to prevent busy wait for destruction
- Close settingswindow on ctrl+w
- wbm Avoid segfaults on failing screenAt()
- jetbrains:1.1 Polish. Fix Macos.
- Drop usage weight. Add option to prioritize perfect matches. See #695
- Reintroduce telemetry
- Fix disfunctional link in settings
- tex_to_unicode py interface 0.5
- vpn 1.1 (iid: 0.5)
- yt v1.3 create tmp dirs lazily
- jetbrains 1.0 (iid:0.5)
- Remove plugin registry from global search
- Add -Wno-inline
- Fix line breaks in errors displayed in settings
- Tray icon isMask
- platform_mac 1.0
- py Add button to open the dependency dir
- pint 1.0 (currency converter)
- py Quote cd path
- pacman v1.6 iid:0.5
- timer v1.4 iid:0.5
- Fix pedantic warnings
- BW tray
- Use env vars to set default locale
- Strech config widget
- Fix segfaults on empty icon name lookup
- Lots of UI polishing
- qalc Fix precision probles
- websearch Add google maps to defaults
- datetime Use default locale
- Make Triggerwidget edit trigger on double click anywhere
- Config widget per plugin (v0.20)
- chromium:1.4 Add path reset button
- locate 1.6
- docker 1.3
- qalc v1.0 Prototype
- md Use content if long description is a file path
- Use both, extension and item id, as icon cache key
- Add standard pixmaps support to iconprovider
- Workaround terminator bug #702
- wbm Add Nord theme
- calc Respect LC_*
- chromium Fix filewatcher does not watch bookmarks
- wbm Do not exit on missing themes
- wbm Use generic placeholder color for input hint
- app:xdg Add exec key option. Also exclude 'env' in exec keys.
- wbm Fix clipped label
- WBM fix open theme file action
- files Provide trash item
- wbm Fix list view height margins
- trash Drop. Provided by files plugin now.
- datetime v1.0
- urlhandler Fix tld validation
- Fix recurring new version info
- Allow copyconstruction of rank and index items
- calc 1.5
- Inline evaluation
- Default trigger '='
- Synopsis
- wbm Add item activation using Ctrl+O
- Add reload actinon for plugins
- Support Console term
- Fix backgroundexecutor not using move semantics
- Refactoring
- Show plugin header files in IDEs
- Use handcrafted icon lookup again
- Revert to dedicated FallbackHandler
- Clean interface using opaque pointers
- GlobalQueryHandler::rankItems -> handlyQuery
- IndexQueryHandlers have to set items directly
- wbs 1.3 add query handler providing themes
- apps_xdg 1.5 Remove desktop indexing
- ssh 1.5
- Fix ssh connect containing user or port
- Allow specifying a command to send to the host
- Add action (keep/close term)
- yt v1.2 (iid:0.5)
- kill v1.1 (iid:0.5)
Fix invalid submodule link breaking OBS builds
- chromium Fix config loading
- goldendict 1.1 (0.18)
- Always print report in debug mode
- Add platform, lang and locale to report
- Support Terminology
- mac_apps - Dont show system service apps
- python - ! Add default md_id if not available
- Add missing long description in plugin metadata.
- Add metadata LONG_DESCRIPTON to docs
- urlhandler - Handcraft tld validation. Make handler global.
- py - Create site-packages dir if necessary
- snippets - Fix open snippet
Fixes, minor changes and requests
- py Ask user to install missing python dependencies in terminal
- googletrans 1.0
- pass 1.2
- Give sensible defaults for usage history
- Fix memory weight not being loaded
- Merge frontend tab into general
- Support foot terminal
- Check for other instances before laoding plugins
- files - Avoid starting indexing on file index serialization
- googletrans 1.0
- pass 1.2
Drop albertctl. Back to albert <command>
- sendTrayNotification(…) add time parameter
- Support wezterm.
- Python 1.5
- sendTrayNotification(…) add ms parameter
- Hash 1.5
- Global query handler
- Add copy 8 char action
- Pomodoro 1.1
- CopyQ 1.2
- Support Kitty terminal
- Support Alacritty terminal
- wbm Show synopsis in tooltip
- fix single instance mechanism
- docker - Archive, curious segfaults
- aur - Port 0.5
- awiki - Port 0.5
- wbm Fix theme dir paths
- Better diagnostics on frontend loading
- Fix armhf builds
Note that there have been some breaking changes. The new plugin id format changed settings keys and
config/cache/data paths. If you want to keep your old plugin settings you have to adjust the section
names in the config file and adjust the paths in your config/cache/data dirs. (e.g. from
org.albert.files to files). I'd recommend to start from scratch though, since too much changed.
- Shorter plugin ids.
- Customizeable triggers (if the extension permits)
- Central plugin management
- More useful plugin metadata
- User customizable scoring parameters
- Add user option memory decay
- Add user option memory weight
- Finally scoring for all items
- Inputline history goes to a file now
- Settingswidget overhaul
- Hello Qt6, C++20 👋
- Entirely new interface (see header files)
- Value typed Action class based on std::function
- Drop all former *Action classes
- Free functions replace and extend action subclass functionality
- Updates to Item interface
- New and extended query handling interface classes
- Extended frontend interface
- New abstract plugin provider interface
- Common plugin metadata
- Maintainership is a thing now!
- Add StandardItem factory for better type deduction and readability
- Add bgexecutor class
- Add timeprinter
- Leaner logging
- Query design change (realtime, global, indexed)
- Add extension watcher template class
- Move XDG into the lib.
- python 1.4 (0.18)
- Use system pybind
- 0.5 interface
- auto pip dependencies
- files 1.2 (0.18)
- Drop bashlike completions. We have items.
- Settings per root path
- Add name filter dialog
- Add option watch filesystem
- Add option max depth
- snippets 1.1 (0.18)
- files instead database
- widgetsboxmodel 1.2 (0.18)
- Fading busy indicating settingsbutton
- Drop rich text
- Proper async query without flicker using statemachines
- Add input hint
- Add option show fallbacks on empty query
- Add option history search
- Archived
- firefox
- qml box model
- mpris
- vbox
- Let users choose the chromium bookmarks path
- Fix #978
Fix #1064.
Fix #1117
Sloppy hotfix #1088. 0.18 will change DB entirely anyway.
Drop telemetry
- wbm Fix completion
- Fix OBS builds
- Several fixes
- Archive virtualbox python extension
- Again break init order of Item for the sake of less boilerplate. Presumed this frequency indexStrings > actions > completion > urgency.
- Let shells handle splitting/quoting
- Add core as QueryHandler. Add restart, quit, settings action. Also to tray and cli.
- Drop shutil:: and let shells handle lexing
- FINALLY ARCHIVE EXTERNAL EXTENSIONS.
- New extension state : MissingDependencies
- Disable settings items of exts in this new state
- Use pybind v2.6.1
- term v1.1 Let shells handle lexing
- calc Add muparserInt option for hex calculations
- Use QLoggingCategory in all extensions
- Implicit dependency check for executables and Python modules
- Pyv1.3 Adopt core changes. PyAPIv0.4. Changes to the API:
- embedded module is called 'albert' now
- Reflect core api changes:
- Positional arguments of the standard item changes
- New semantics of the term action constructors
- String commandline will be executed in a shell
- StringList commandline will be executed without shell
- Add core version of iconLookup(StringList)
- New metadata labels:
- version: new versioning scheme iid_maj.iid_min.ext_version
- title: former prettyname
- authors: string or list
- exec_deps: string or list
- py_deps: string or list
- triggers: string or list
- Allow multiple triggers
- Allow multiple authors
- locate ' for basename '' for full path lookups
- timer Make notification stay.
- baseconv Python-style base prefixes to detect source base
- texdoc Add texdoc plugin
- aur add yay helper
- Fix tab order
- chromium Chromium v1.1
- docker New extension prototype
- timer Use dbus instead of notify-send
- units v1.2 including to time conversion
- Hotfix for #955
- Archive defunct CoinMarketCap and Bitfinex extensions
- Allow multiple instances of albert on different X sessions
- Fix super key not registering
- Add terms: Elementary, Tilix, QTerminal, Termite
- Fix build on FreeBSD
- Dont show fallbacks on triggered queries
- Applications Index desktop files on desktop
- firefox Rework v2
- ssh Respect the Include keyword
- ssh Allow hyphens to be part of hostnames
- chromium Add brave-browser to list of chromium based browsers.
- New:
- emoji
- bitwarden
- xkcd
- node.js evaluator
- php evaluator
- Fix default plugin lookup path
- Fix flicker when changing frontends
- Fix "Terminal option resets after a restart"
- Link libglobalshortcut statically
- Add a build flag for QtCharts
- Drop debug options if favor of QLoggingCategory env vars
- ssh Fix input regex. Sort by length then lexically.
- ssh Use backward compatible ssh url syntax
- qml Consistent form layout
- aur Sort items by length first
- Add jekyll website as submodule
- New project structure (minimal shared lib)
- Let travis build against Ubuntu 18.04 and 16.04
- Backward compatibility for Ubuntu 16.04
- Let fuzzy require an additional character. Tolerance: floor((wordlen - 1)/3))
- Print logging category to stdout QT_LOGGING_RULES="*debug=false;driver.usb.debug=true"
- Term Change terminal action order: Let "Run w/o term" be the last one
- VBox Set default build switch for VirtualBox to OFF
- Files Add fancy icons to mime dialog
- Py Use ast to read metadata without loading the modules
- Py Additional constraint: Metadata have to be string literals (for ast)
- Py Additional constraint: Name modules according PEP8
- Py/WinSwitch Add close win action
- Py/VBox Add VirtualBox extension
Usage graph in the settings (QtCharts (>=5.6))
- QML
- Frontend plugin requires ()5.9
- History search of the input now allows substring matching (Type and navigate)
- Store user input of every session
- New Python extension: Fortune
- New Python extension: Window switcher
- Telemetry is now opt-in.
- New themes
- New Python extension: Pidgin
Bugfixes
Bugfixes
- New Python extension: Datetime. (Time display and conversion. Supersedes the external extension)
- New Python extension: Bitfinex. (Quickly access Bitfinex markets)
- The file browse mode finally mimics bash completion behavior.
- Hotfix release
- applications
- New option in applications extension: Use keywords for lookup
- New option in applications extension: Use generic name for lookup
- New Python extension: Arch Wiki
- The kvstore extension was renamed to Snippets and got an improved config UI.
- Gnome dictionary (nikhilwanpal)
- Mathematica (Asger Hautop Drewsen)
- TeX to unicode (Asger Hautop Drewsen)
- IP address (Benedict Dudel)
- Multi Translate (David Britt)
- Emoji lookup (David Britt)
- Kaomoji lookup (David Britt)
- Timer
- Binance
- python - API PythonInterface/v0.2 (
configLocation(),dataLocation(),cacheLocation()). - New:
- CoinMarketCap
- Trash
- Pomodoro
- Epoch
- Packagist
New Python extension: npm (Benedict Dudel)
- Rich text support
- New:
- AUR
- scrot
- New CopyQ Python extension (Ported from external extension)
- New locate Python extension
Bugfixes
- Better HiDPI support
- New commandline option for debug output (-d)
- New
- Gnote (Ported from external extension)
- Tomboy (Ported from external extension)
- Pacman
- Pass
- Kill
Bugfixes
New Wikipedia Python extension
Bugfixes
New base converter Python extension
New Google Translate Python extension
Bugfixes
Bugfixes
- New
- Python Embedding
- Python Eval
- Debugging
- Zeal
- GoldenDict
- Unit Converter
- Currency Converter
Bugfixes
- Modular frontends
- QML frontend
- Tree structure in file index and "smart" indexing
- Shell like completion for terminal extension
- New: KeyValue
- New: Hash Generator
- Git-like ignore files
- Dedicated dialog for websearch editing.
Bugfixes
- Home and End now work for the results list holding Ctrl.
Bugfixes
- Fine-grained control of the MIME types to be indexed.
- Extensions can now have multiple triggers.
- The sorting algorithm is now stable.
- Browse mode now lists the results in lexicographical order with directories before the files.
- The use of fallbacks has been disabled for triggered queries.
- Further the websearch extension now contains an URL handler.
- The qss property
selection-colorworks as expected now.
Bugfixes
- Terminal extension does no more show suggestions.
- Any shell querying dropped.
- Bugfixes
Bugfixes
Bugfixes
- Tab completion.
- Hovering over the input box the mouse wheel can now be used to browse the history.
- Spotlight themes (Bright, Dark and Space).
- The terminal extension now provides the shell aliases too.
- File browse mode.
- The application extension allows to ignore the
OnlyShowIn/NotShowInkeys. - The bash script to clone the template extension is now deprecated and replaced by a Python script.
- New: MPRIS
- New: Secure Shell
Bugfixes
Bugfixes
Bugfixes
Bugfixes
- Chooseable terminal command of a list of installed terminals.
- The app icon now uses a theme icon
- Open terminal here action.
- Mostly fixes
- New extension system architecture
- External extensions
- Firefox
- Improved VirtualBox extension
- Plugin abstraction architecture
- New plugin support: Native C++ QPlugins
- New plugin support: Executables
- Single click activation of items
- Action modifiers
- Multithreading
- Core is now responsible for usage counting (obsoletes most serialization)
- Asynchronous query "live" results
- Tray icon
- New option: Show tray icon
- New extension: Debug
- New extension: Virtual Box
- Basic IPC
- Graceful termination on SIGHUP
- New option: Hide on close
- New option: Display shadow
- Graceful termination on SIGINT
- Single instance
- Hotfixes
- New extension: Terminal
- Project structure: Use libraries
- Restructured settings widget
- Custom icon lookup
- Make main window movable
- Show alternative actions o Tab
- New option: Always on top
- New option: Hide on focus out
- New option: Display icons
- New option: Display scrollbar
- Dozens of new themes: Dark, Bright, SolarizedDark, SolarizedBright in several colors.
- Show message box after ungraceful termination
- Restructured settings widget
- New option: Group separators for calculator
- New themes: Arc
- New theme: Numix
- Minor tasks and improvements
- New extension: System control
- Bring settings window to front if it is already open.
- Reorderable websearches
- Allow exclusive queries by trigger
- Graceful termination on SIGINT
- Tasks, Hotfixes, minor changes
- Implement plugin architecture
- Port the modules
- Ignore file (".albertignore")
- Actions
- Threaded background indexing
- New themes
- Make action modifications configurable
- Command history
- Add configuration widget to configure the modules
- Make user interface themable
- Provide proof-of-concept themes
- Make actions modifiable
- Show action modifications in the list
- Use CMake build system
- Add settings widget
- Implement indexing and search algorithms 'prefixmatch' and 'fuzzy'
- Implement serialization of indexes
- New module:
- Applications
- Bookmarks
- Calculator
- Web search
- Abstract module architecture
- New module: Files
- Basic user interface
- Hotkeymanager