{"id":13547920,"url":"https://github.com/leanflutter/window_manager","last_synced_at":"2025-05-14T11:12:48.993Z","repository":{"id":37020161,"uuid":"387067553","full_name":"leanflutter/window_manager","owner":"leanflutter","description":"The window_manager plugin provides comprehensive window management capabilities for Flutter desktop applications, enabling full control over window size, position, appearance, close behavior, and listening to events.","archived":false,"fork":false,"pushed_at":"2025-03-29T03:23:16.000Z","size":633,"stargazers_count":763,"open_issues_count":132,"forks_count":224,"subscribers_count":15,"default_branch":"main","last_synced_at":"2025-04-13T13:54:59.709Z","etag":null,"topics":["flutter","flutter-desktop","flutter-web","linux","macos","window-manager","window-resize","window-resizer","windows"],"latest_commit_sha":null,"homepage":"https://leanflutter.dev/documentation/window_manager","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/leanflutter.png","metadata":{"files":{"readme":"README-ZH.md","changelog":"CHANGELOG.md","contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"github":"lijy91"}},"created_at":"2021-07-18T01:32:41.000Z","updated_at":"2025-04-11T10:08:50.000Z","dependencies_parsed_at":"2024-01-04T16:31:18.946Z","dependency_job_id":"e6787bab-feaa-4385-866a-849bc9069812","html_url":"https://github.com/leanflutter/window_manager","commit_stats":{"total_commits":373,"total_committers":39,"mean_commits":9.564102564102564,"dds":0.3163538873994638,"last_synced_commit":"7f47e58aa24b2db2cb8a7d642c2fc0fd6a089f7f"},"previous_names":[],"tags_count":29,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/leanflutter%2Fwindow_manager","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/leanflutter%2Fwindow_manager/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/leanflutter%2Fwindow_manager/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/leanflutter%2Fwindow_manager/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/leanflutter","download_url":"https://codeload.github.com/leanflutter/window_manager/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248724586,"owners_count":21151559,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["flutter","flutter-desktop","flutter-web","linux","macos","window-manager","window-resize","window-resizer","windows"],"created_at":"2024-08-01T12:01:03.190Z","updated_at":"2025-04-13T13:55:08.164Z","avatar_url":"https://github.com/leanflutter.png","language":"C++","readme":"\u003e **🚀 快速发布您的应用**: 试试 [Fastforge](https://fastforge.dev) - 构建、打包和分发您的 Flutter 应用最简单的方式。\n\n# window_manager\n\n[![pub version][pub-image]][pub-url] [![][discord-image]][discord-url] [![All Contributors][all-contributors-image]](#contributors)\n\n[pub-image]: https://img.shields.io/pub/v/window_manager.svg\n[pub-url]: https://pub.dev/packages/window_manager\n\n[discord-image]: https://img.shields.io/discord/884679008049037342.svg\n[discord-url]: https://discord.gg/zPa6EZ2jqb\n\n[all-contributors-image]: https://img.shields.io/github/all-contributors/leanflutter/window_manager?color=ee8449\u0026style=flat-square\n\n这个插件为 Flutter 桌面应用程序提供了全面的窗口管理功能，使开发者能够完全控制窗口大小、位置、外观、关闭行为，以及监听事件。\n\n---\n\n[English](./README.md) | 简体中文\n\n---\n\n\u003c!-- START doctoc generated TOC please keep comment here to allow auto update --\u003e\n\u003c!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE --\u003e\n\n- [平台支持](#%E5%B9%B3%E5%8F%B0%E6%94%AF%E6%8C%81)\n- [文档](#%E6%96%87%E6%A1%A3)\n- [快速开始](#%E5%BF%AB%E9%80%9F%E5%BC%80%E5%A7%8B)\n  - [安装](#%E5%AE%89%E8%A3%85)\n  - [用法](#%E7%94%A8%E6%B3%95)\n- [相关文章](#%E7%9B%B8%E5%85%B3%E6%96%87%E7%AB%A0)\n- [谁在用使用它？](#%E8%B0%81%E5%9C%A8%E7%94%A8%E4%BD%BF%E7%94%A8%E5%AE%83)\n- [贡献者](#%E8%B4%A1%E7%8C%AE%E8%80%85)\n- [许可证](#%E8%AE%B8%E5%8F%AF%E8%AF%81)\n\n\u003c!-- END doctoc generated TOC please keep comment here to allow auto update --\u003e\n\n## 平台支持\n\n| Linux | macOS | Windows |\n| :---: | :---: | :-----: |\n|   ✔️   |   ✔️   |    ✔️    |\n\n## 文档\n\n- [快速开始](https://leanflutter.dev/zh/documentation/window_manager/quick-start)\n- [API 参考](https://pub.dev/documentation/window_manager/latest/window_manager/)\n- [更新日志](https://pub.dev/packages/window_manager/changelog)\n\n## 快速开始\n\n### 安装\n\n将此添加到你的软件包的 `pubspec.yaml` 文件：\n\n```yaml\ndependencies:\n  window_manager: ^0.4.2\n```\n\n### 用法\n\n```dart\nimport 'package:flutter/material.dart';\nimport 'package:window_manager/window_manager.dart';\n\nvoid main() async {\n  WidgetsFlutterBinding.ensureInitialized();\n  // 必须加上这一行。\n  await windowManager.ensureInitialized();\n\n  WindowOptions windowOptions = WindowOptions(\n    size: Size(800, 600),\n    center: true,\n    backgroundColor: Colors.transparent,\n    skipTaskbar: false,\n    titleBarStyle: TitleBarStyle.hidden,\n  );\n  windowManager.waitUntilReadyToShow(windowOptions, () async {\n    await windowManager.show();\n    await windowManager.focus();\n  });\n\n  runApp(MyApp());\n}\n\n```\n\n\u003e 请看这个插件的示例应用，以了解完整的例子。\n\n## 相关文章\n\n- [关闭窗口后点击Dock图标进行恢复](https://leanflutter.dev/zh/blog/click-dock-icon-to-restore-after-closing-the-window)\n- [让应用成为单实例](https://leanflutter.dev/zh/blog/making-the-app-single-instanced)\n\n## 谁在用使用它？\n\n- [Airclap](https://airclap.app/) - 任何文件，任意设备，随意发送。简单好用的跨平台高速文件传输APP。\n- [AuthPass](https://authpass.app/) - 基于Flutter的密码管理器，适用于所有平台。兼容Keepass 2.x（kdbx 3.x）。\n- [Biyi (比译)](https://biyidev.com/) - 一个便捷的翻译和词典应用程序。\n- [BlueBubbles](https://github.com/BlueBubblesApp/bluebubbles-app) - BlueBubbles is an ecosystem of apps bringing iMessage to Android, Windows, and Linux\n- [LunaSea](https://github.com/CometTools/LunaSea) - A self-hosted controller for mobile and macOS built using the Flutter framework.\n- [Linwood Butterfly](https://github.com/LinwoodCloud/Butterfly) - 用 Flutter 编写的开源笔记应用\n- [RustDesk](https://github.com/rustdesk/rustdesk) - 远程桌面软件，开箱即用，无需任何配置。您完全掌控数据，不用担心安全问题。\n- [Ubuntu Desktop Installer](https://github.com/canonical/ubuntu-desktop-installer) - This project is a modern implementation of the Ubuntu Desktop installer.\n- [UniControlHub](https://github.com/rohitsangwan01/uni_control_hub) - Seamlessly bridge your Desktop and Mobile devices\n- [EyesCare](https://bixat.dev/products/EyesCare) - A light-weight application following 20 rule adherence for optimum eye health\n\n\n## 贡献者\n\n\u003c!-- ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section --\u003e\n\u003c!-- prettier-ignore-start --\u003e\n\u003c!-- markdownlint-disable --\u003e\n\u003ctable\u003e\n  \u003ctbody\u003e\n    \u003ctr\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"https://github.com/lijy91\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/3889523?v=4?s=100\" width=\"100px;\" alt=\"LiJianying\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eLiJianying\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/leanflutter/window_manager/commits?author=lijy91\" title=\"Code\"\u003e💻\u003c/a\u003e\u003c/td\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"https://github.com/damywise\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/25608913?v=4?s=100\" width=\"100px;\" alt=\" A Arif A S\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003e A Arif A S\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/leanflutter/window_manager/commits?author=damywise\" title=\"Code\"\u003e💻\u003c/a\u003e\u003c/td\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"https://github.com/jpnurmi\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/140617?v=4?s=100\" width=\"100px;\" alt=\"J-P Nurmi\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eJ-P Nurmi\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/leanflutter/window_manager/commits?author=jpnurmi\" title=\"Code\"\u003e💻\u003c/a\u003e\u003c/td\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"https://github.com/Dixeran\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/22679810?v=4?s=100\" width=\"100px;\" alt=\"Dixeran\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eDixeran\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/leanflutter/window_manager/commits?author=Dixeran\" title=\"Code\"\u003e💻\u003c/a\u003e\u003c/td\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"https://github.com/nikitatg\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/96043303?v=4?s=100\" width=\"100px;\" alt=\"nikitatg\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003enikitatg\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/leanflutter/window_manager/commits?author=nikitatg\" title=\"Code\"\u003e💻\u003c/a\u003e\u003c/td\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"https://merritt.codes/\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/9575627?v=4?s=100\" width=\"100px;\" alt=\"Kristen McWilliam\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eKristen McWilliam\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/leanflutter/window_manager/commits?author=Merrit\" title=\"Code\"\u003e💻\u003c/a\u003e\u003c/td\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"https://github.com/Kingtous\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/39793325?v=4?s=100\" width=\"100px;\" alt=\"Kingtous\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eKingtous\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/leanflutter/window_manager/commits?author=Kingtous\" title=\"Code\"\u003e💻\u003c/a\u003e\u003c/td\u003e\n    \u003c/tr\u003e\n    \u003ctr\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"https://github.com/hlwhl\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/7610615?v=4?s=100\" width=\"100px;\" alt=\"Prome\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eProme\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/leanflutter/window_manager/commits?author=hlwhl\" title=\"Code\"\u003e💻\u003c/a\u003e\u003c/td\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"https://i.soit.tech/\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/17426470?v=4?s=100\" width=\"100px;\" alt=\"Bin\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eBin\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/leanflutter/window_manager/commits?author=boyan01\" title=\"Code\"\u003e💻\u003c/a\u003e\u003c/td\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"https://github.com/youxiachai\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/929502?v=4?s=100\" width=\"100px;\" alt=\"youxiachai\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eyouxiachai\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/leanflutter/window_manager/commits?author=youxiachai\" title=\"Code\"\u003e💻\u003c/a\u003e\u003c/td\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"https://github.com/Allenxuxu\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/20566897?v=4?s=100\" width=\"100px;\" alt=\"Allen Xu\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eAllen Xu\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/leanflutter/window_manager/commits?author=Allenxuxu\" title=\"Code\"\u003e💻\u003c/a\u003e\u003c/td\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"https://linwood.dev/\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/20452814?v=4?s=100\" width=\"100px;\" alt=\"CodeDoctor\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eCodeDoctor\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/leanflutter/window_manager/commits?author=CodeDoctorDE\" title=\"Code\"\u003e💻\u003c/a\u003e\u003c/td\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"https://github.com/jcbinet\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/17210882?v=4?s=100\" width=\"100px;\" alt=\"Jean-Christophe Binet\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eJean-Christophe Binet\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/leanflutter/window_manager/commits?author=jcbinet\" title=\"Code\"\u003e💻\u003c/a\u003e\u003c/td\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"https://github.com/Jon-Salmon\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/26483285?v=4?s=100\" width=\"100px;\" alt=\"Jon Salmon\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eJon Salmon\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/leanflutter/window_manager/commits?author=Jon-Salmon\" title=\"Code\"\u003e💻\u003c/a\u003e\u003c/td\u003e\n    \u003c/tr\u003e\n    \u003ctr\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"https://github.com/koral--\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/3340954?v=4?s=100\" width=\"100px;\" alt=\"Karol Wrótniak\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eKarol Wrótniak\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/leanflutter/window_manager/commits?author=koral--\" title=\"Code\"\u003e💻\u003c/a\u003e\u003c/td\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"https://github.com/laiiihz\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/35956195?v=4?s=100\" width=\"100px;\" alt=\"LAIIIHZ\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eLAIIIHZ\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/leanflutter/window_manager/commits?author=laiiihz\" title=\"Code\"\u003e💻\u003c/a\u003e\u003c/td\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"https://www.linkedin.com/in/mikhailkulesh\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/30557348?v=4?s=100\" width=\"100px;\" alt=\"Mikhail Kulesh\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eMikhail Kulesh\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/leanflutter/window_manager/commits?author=mkulesh\" title=\"Code\"\u003e💻\u003c/a\u003e\u003c/td\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"https://github.com/prateekmedia\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/41370460?v=4?s=100\" width=\"100px;\" alt=\"Prateek Sunal\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003ePrateek Sunal\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/leanflutter/window_manager/commits?author=prateekmedia\" title=\"Code\"\u003e💻\u003c/a\u003e\u003c/td\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"https://ricardoboss.de/\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/6266356?v=4?s=100\" width=\"100px;\" alt=\"Ricardo Boss\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eRicardo Boss\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/leanflutter/window_manager/commits?author=ricardoboss\" title=\"Code\"\u003e💻\u003c/a\u003e\u003c/td\u003e\n    \u003c/tr\u003e\n  \u003c/tbody\u003e\n  \u003ctfoot\u003e\n    \u003ctr\u003e\n      \u003ctd align=\"center\" size=\"13px\" colspan=\"7\"\u003e\n        \u003cimg src=\"https://raw.githubusercontent.com/all-contributors/all-contributors-cli/1b8533af435da9854653492b1327a23a4dbd0a10/assets/logo-small.svg\"\u003e\n          \u003ca href=\"https://all-contributors.js.org/docs/en/bot/usage\"\u003eAdd your contributions\u003c/a\u003e\n        \u003c/img\u003e\n      \u003c/td\u003e\n    \u003c/tr\u003e\n  \u003c/tfoot\u003e\n\u003c/table\u003e\n\n\u003c!-- markdownlint-restore --\u003e\n\u003c!-- prettier-ignore-end --\u003e\n\n\u003c!-- ALL-CONTRIBUTORS-LIST:END --\u003e\n\n## 许可证\n\n[MIT](./LICENSE)\n","funding_links":["https://github.com/sponsors/lijy91"],"categories":["C++","Packages"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fleanflutter%2Fwindow_manager","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fleanflutter%2Fwindow_manager","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fleanflutter%2Fwindow_manager/lists"}