This update adds a 'summary' command to the Browser plugin, providing a summary of the content of the currently active Browser URL. The command will return with an error message if there is no active browser URL. A conditions check whether the plugin's query is executed within a browser has been added.
Implemented a new privacy tab in the plugin settings view in the Flutter UI. This tab displays access permissions required by a specific plugin. Enhanced the Wox plugin system to support these changes, adding the necessary code configurations. Also updated the browser plugin to leverage these new features.
This update allows the browser plugin to display icons specific to the websites in the search results instead of generic browser icons. Cache support has been added for website icons to ensure efficiency and speed up results display. This change enhances user experience by providing more accurate visual cues.
This commit adds browser tab management functionality within the BrowserPlugin of the Wox plugin. New data structures to represent browser tabs and incoming websocket messages were introduced. Query function was also updated to support searching opened tabs based on title or URL. This feature is focused on improving user experience by making navigation and management of browser tabs more efficient.
The code diff adds a Websocket server within the Browser plugin's initialization method and sets up a listener for setting changes. It also handles and logs more potential error cases in the newWebsocketServer method and log incoming messages. Plus, improvements on error handling in Flutter UI and HTTP util are implemented.
This commit introduces a 'RecursiveDepth' attribute as an enhancement to the app directory retrieval in the Wox plugin system. This allows more flexibility in controlling the depth of recursion when retrieving apps. Additionally, this commit alters the 'GetAppDirectories' implementation on both macOS and Windows to reflect this new feature.
Enhanced '/System/Applications' path traversal in the Wox plugin system for Darwin OS and streamlined the query routine in the Application Plugin. Removed unnecessary sub-directory checks and iteration, and optimized the search for applications by directly using information from the apps list.
Implemented a new file search feature in the Wox launcher. This includes creating new structures for search patterns and search results, as well as an interface for a searcher in `searcher.go`, and macOS-specific implementation in `searcher_darwin.go`. It also includes necessary updates in `main.go` and `plugin.go` for plugin registration and handling search queries.
Code enhancements have been made to the Wox launcher controller, wox_api, and various UI views to handle dynamic display of query icons based on input type. This update allows for more intuitive user feedback, with specialized icons for file and text input types. Adjustments have also been made to error handling in the plugin manager for improved stability.
In the UI manager, the active window's name is now stored before Wox is activated. Also, the active window name is retrieved within the UI manager and used to update ShowApp and ToggleApp functions. The 'ShortcutFrom' parameter is removed from the NodeJS plugin host.
The Wox plugin and related files were updated to include the context of the active window name within queries. Additionally, "@wox-launcher/wox-plugin" was updated from version 0.0.63 to 0.0.66 and minor change to plugin description in plugin-store.json was made.
The URL plugin has been refactored for simpler and more efficient URL validation, specifically revamping its regular expression (regex) pattern. Additionally, unit tests have been expanded to cover invalid URLs and alternative valid URLs. The refactor also reduces some duplicated and unnecessary code in the plugin's Query function.
The single_instance module has been removed, which included the deletion of multiple related files. The method to check if an instance of the application is already running has been refactored in the main.go file. Additionally, a timeout was added for the "PickFiles" method in ui_impl.go to prevent unnecessary waiting. This leads to cleaner code and potentially faster execution times.
The file locking mechanism in both Windows and POSIX systems has been modified. This update restructures the way files are opened for writing and locked. Unnecessary file existence checks have been eliminated, and a more proficient use of the defer statement for file closing is included. On a failure, the file will still be properly closed. This should considerably enhance the efficiency and reliability of the lock function.
Added a single instance lock for the server to prevent multiple instances running simultaneously. Updated the sequence of server port assignment and added error catching for port allocation. Introduced a "/show" route to handle existing instances. Enhanced the utility functions with `GetAppLockFilePath` and `HttpPost`.
This commit wraps clipboard operations on Darwin in try-catch blocks to handle potential exceptions gracefully. Additionally, an "IsEmpty" function is introduced in `selection.go`, which checks whether the current selection is empty, ultimately enhancing robustness against empty selections.
Renamed to llm tools plugin, and remove chat function. this change will make Wox focus on llm tools which is the better user case for such kind of launcher tool.
A new provider, Groq, is introduced to chatgpt, thereby enabling the plugin to connect with this new provider. This addition includes initializing, reading, streaming, reading models, closing the Groq provider, and linking with the Groq API. Modifications were made in the existing code (chatgptModelProviderName, chatgptModelProviderNames in provider.go, GenerateContent in provider_groq.go) to accommodate this.
Implemented developer plugin support, including loading, uninstalling and tagging them in UI. Enabled using a local directory for plugin development, dynamically reloading for changes. Added visual tagging of development plugins in the UI with a warning color. Dev Plugin is also marked with a boolean variable in 'metadata'.