- static void storeSessionData(const QString &key, const QVariant &data);
- static QVariant retrieveSessionData(const QString &key, const QVariant &def = QVariant());
- static QStringList sessionDataKeys();
-
- enum ClientMode { LocalCore, RemoteCore };
- static ClientMode clientMode;
-
- signals:
- void sendInput(BufferId, QString message);
- void showBuffer(Buffer *);
- void bufferSelected(Buffer *);
- void bufferUpdated(Buffer *);
- void bufferActivity(Buffer::ActivityLevel, Buffer *);
- void bufferDestroyed(Buffer *);
- void backlogReceived(Buffer *, QList<Message>);
- void requestBacklog(BufferId, QVariant, QVariant);
+ static void userInput(const BufferInfo &bufferInfo, const QString &message);
+
+ static void setBufferLastSeenMsg(BufferId id, const MsgId &msgId); // this is synced to core and other clients
+ static void setMarkerLine(BufferId id, const MsgId &msgId); // this is synced to core and other clients
+ static MsgId markerLine(BufferId id);
+
+ static void removeBuffer(BufferId id);
+ static void renameBuffer(BufferId bufferId, const QString &newName);
+ static void mergeBuffersPermanently(BufferId bufferId1, BufferId bufferId2);
+ static void purgeKnownBufferIds();
+
+ /**
+ * Requests client to resynchronize the CoreInfo object for legacy (pre-0.13) cores
+ *
+ * This provides compatibility with updating core information for legacy cores, and can be
+ * removed after protocol break.
+ *
+ * NOTE: On legacy (pre-0.13) cores, any existing connected signals will be destroyed and must
+ * be re-added after calling this, in addition to checking for existing data in coreInfo().
+ */
+ static void refreshLegacyCoreInfo();
+
+ static void changePassword(const QString &oldPassword, const QString &newPassword);
+ static void kickClient(int peerId);
+
+ void displayIgnoreList(QString ignoreRule) {
+ emit showIgnoreList(ignoreRule);
+ }
+
+ /**
+ * Request to show the channel list dialog for the network, optionally searching by channel name
+ *
+ * @see Client::showChannelList()
+ *
+ * @param networkId Network ID for associated network
+ * @param channelFilters Partial channel name to search for, or empty to show all
+ * @param listImmediately If true, immediately list channels, otherwise just show dialog
+ */
+ void displayChannelList(NetworkId networkId, const QString &channelFilters = {},
+ bool listImmediately = false)
+ {
+ emit showChannelList(networkId, channelFilters, listImmediately);
+ }
+
+signals: