| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596 | 
							
- // This must be included before many other Windows headers.
 
- #include <windows.h>
 
- // For getPlatformVersion; remove unless needed for your plugin implementation.
 
- #include <VersionHelpers.h>
 
- #include <flutter/method_channel.h>
 
- #include <flutter/plugin_registrar_windows.h>
 
- #include <flutter/standard_method_codec.h>
 
- #include <map>
 
- #include <memory>
 
- #include <sstream>
 
- #include "include/appflowy_backend/app_flowy_backend_plugin.h"
 
- namespace
 
- {
 
-   class AppFlowyBackendPlugin : public flutter::Plugin
 
-   {
 
-   public:
 
-     static void RegisterWithRegistrar(flutter::PluginRegistrarWindows *registrar);
 
-     AppFlowyBackendPlugin();
 
-     virtual ~AppFlowyBackendPlugin();
 
-   private:
 
-     // Called when a method is called on this plugin's channel from Dart.
 
-     void HandleMethodCall(
 
-         const flutter::MethodCall<flutter::EncodableValue> &method_call,
 
-         std::unique_ptr<flutter::MethodResult<flutter::EncodableValue>> result);
 
-   };
 
-   // static
 
-   void AppFlowyBackendPlugin::RegisterWithRegistrar(
 
-       flutter::PluginRegistrarWindows *registrar)
 
-   {
 
-     auto channel =
 
-         std::make_unique<flutter::MethodChannel<flutter::EncodableValue>>(
 
-             registrar->messenger(), "appflowy_backend",
 
-             &flutter::StandardMethodCodec::GetInstance());
 
-     auto plugin = std::make_unique<AppFlowyBackendPlugin>();
 
-     channel->SetMethodCallHandler(
 
-         [plugin_pointer = plugin.get()](const auto &call, auto result)
 
-         {
 
-           plugin_pointer->HandleMethodCall(call, std::move(result));
 
-         });
 
-     registrar->AddPlugin(std::move(plugin));
 
-   }
 
-   AppFlowyBackendPlugin::AppFlowyBackendPlugin() {}
 
-   AppFlowyBackendPlugin::~AppFlowyBackendPlugin() {}
 
-   void AppFlowyBackendPlugin::HandleMethodCall(
 
-       const flutter::MethodCall<flutter::EncodableValue> &method_call,
 
-       std::unique_ptr<flutter::MethodResult<flutter::EncodableValue>> result)
 
-   {
 
-     if (method_call.method_name().compare("getPlatformVersion") == 0)
 
-     {
 
-       std::ostringstream version_stream;
 
-       version_stream << "Windows ";
 
-       if (IsWindows10OrGreater())
 
-       {
 
-         version_stream << "10+";
 
-       }
 
-       else if (IsWindows8OrGreater())
 
-       {
 
-         version_stream << "8";
 
-       }
 
-       else if (IsWindows7OrGreater())
 
-       {
 
-         version_stream << "7";
 
-       }
 
-       result->Success(flutter::EncodableValue(version_stream.str()));
 
-     }
 
-     else
 
-     {
 
-       result->NotImplemented();
 
-     }
 
-   }
 
- } // namespace
 
- void AppFlowyBackendPluginRegisterWithRegistrar(
 
-     FlutterDesktopPluginRegistrarRef registrar)
 
- {
 
-   AppFlowyBackendPlugin::RegisterWithRegistrar(
 
-       flutter::PluginRegistrarManager::GetInstance()
 
-           ->GetRegistrar<flutter::PluginRegistrarWindows>(registrar));
 
- }
 
 
  |