Add a new completion API for experimental plugins feature. (#5000)

Co-authored-by: Rasmus Karlsson <rasmus.karlsson@pajlada.com>
This commit is contained in:
Mm2PL
2023-12-10 14:41:05 +01:00
committed by GitHub
parent e4258160cd
commit fd4cac2c2c
13 changed files with 448 additions and 16 deletions
+6 -1
View File
@@ -36,6 +36,7 @@ public:
// This is required to be public because of c functions
Plugin *getPluginByStatePtr(lua_State *L);
// TODO: make a function that iterates plugins that aren't errored/enabled
const std::map<QString, std::unique_ptr<Plugin>> &plugins() const;
/**
@@ -52,6 +53,10 @@ public:
*/
static bool isPluginEnabled(const QString &id);
std::pair<bool, QStringList> updateCustomCompletions(
const QString &query, const QString &fullTextContent,
int cursorPosition, bool isFirstWord) const;
private:
void loadPlugins();
void load(const QFileInfo &index, const QDir &pluginDir,
@@ -64,5 +69,5 @@ private:
std::map<QString, std::unique_ptr<Plugin>> plugins_;
};
}; // namespace chatterino
} // namespace chatterino
#endif