Coder Social home page Coder Social logo

triptych / flutter-desktop-embedding Goto Github PK

View Code? Open in Web Editor NEW

This project forked from google/flutter-desktop-embedding

0.0 2.0 0.0 1.19 MB

Desktop implementations of the Flutter embedding API

License: Apache License 2.0

Shell 2.63% Dart 15.88% Makefile 4.27% C++ 41.14% Swift 0.73% Objective-C 27.29% Batchfile 3.66% Objective-C++ 4.38%

flutter-desktop-embedding's Introduction

Desktop Embedding for Flutter

The purpose of this project is to support building applications that use Flutter on Windows, macOS, and Linux.

It consists of libraries that implement Flutter's embedding API, handling drawing and mouse/keyboard input, as well as optional plugins to access other native platform functionality.

How to Use This Code

Setting Up

The tooling and build infrastructure for this project requires that you have a Flutter tree in the same parent directory as the clone of this project:

<parent dir>
  ├─ flutter (from http://github.com/flutter/flutter)
  └─ flutter-desktop-embedding (from https://github.com/google/flutter-desktop-embedding)

Alternately, you can place a .flutter_location_config file in the directory containing flutter-desktop-embedding, containing a path to the Flutter tree to use, if you prefer not to have the Flutter tree next to flutter-desktop-embedding.

Repository Structure

The library directory contains the core embedding library code. See the README there for information on building and using it.

The example directory contains an example application built using the library for each platform. If you just want to see something running, or want to see an example of how to use the library, start there.

In addition, there is:

  • plugins: Plugins which provide access to additional platform functionality. These follow a similar structure to Flutter plugins. See the README for details.
  • third_party: Dependencies used by this repository, beyond Flutter itself.
  • tools: Tools used in the development process. Currently these are used by the build systems, but in the future developer utilities providing some functionality similar to the flutter tool may be added.

Flutter Application

Requirements

Since desktop is not a supported platform for Flutter, be sure to read the Flutter application requirements document for important information about how to set up your Flutter application for use with this library.

Debugging

Debugging of the Flutter side of a desktop application is possible, but requires a modified workflow.

Feedback and Discussion

For bug reports and specific feature requests, you can file GitHub issues. For general discussion and questions there's a project mailing list.

When submitting issues related to build errors or other bugs, please make sure to include the git hash of the Flutter checkout you are using. This will help speed up the debugging process.

Caveats

  • This is not an officially supported Google product.
  • This is an exploratory effort, and is not part of the Flutter project. See the Flutter FAQ for Flutter's official stance on desktop development.
  • Many features that would be useful for desktop development do not exist yet. Check the plugins directory for support for native features beyond drawing and event processing. If the feature you need isn't there, file a feature request, or write a plugin!
  • The Linux and Windows implementations currently use GLFW. This is not going to be the final implementation for either platform.

flutter-desktop-embedding's People

Contributors

0xflotus avatar awdavies avatar badpx avatar callumiddon avatar clarkezone avatar devoncarew avatar evilbird avatar franciscojma86 avatar geertjohan avatar guevaralaura avatar johannesgh avatar krisgiesing avatar maun avatar pchampio avatar rashedmyt avatar stuartmorgan avatar vially avatar xuexin avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.