/* ============================================================
 *     The rekonq project
 * ============================================================
 * SPDX-License-Identifier: GPL-3.0-only
 * Copyright (C) 2022 aqua <aqua@iserlohn-fortress.net>
 * ============================================================
 * Description: rekonq plugin interface
 * ============================================================ */

#pragma once

#include <QtPlugin>
#include <rsettings.hpp>
#include <rview.hpp>

class RekonqPluginInterface : public QObject {
  Q_OBJECT

public:
  virtual void init(RekonqSettings *settings) = 0;
  virtual RekonqView *view(const QUrl &url) = 0;
};

#define RekonqPluginInterface_iid "net.rekonq.3.RekonqPluginInterface/1"
Q_DECLARE_INTERFACE(RekonqPluginInterface, RekonqPluginInterface_iid)