{"id":24703115,"url":"https://github.com/mr-1311/wayland_layer_shell","last_synced_at":"2026-03-11T10:06:50.065Z","repository":{"id":211788242,"uuid":"729943082","full_name":"Mr-1311/wayland_layer_shell","owner":"Mr-1311","description":"A flutter plugin to create desktop components for Wayland using the Layer Shell protocol","archived":false,"fork":false,"pushed_at":"2024-12-30T23:30:15.000Z","size":659,"stargazers_count":18,"open_issues_count":4,"forks_count":6,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-09-02T20:47:34.909Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://pub.dev/packages/wayland_layer_shell","language":"Dart","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/Mr-1311.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"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,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2023-12-10T20:25:33.000Z","updated_at":"2025-08-10T14:46:07.000Z","dependencies_parsed_at":null,"dependency_job_id":"a5af25f8-89b5-41ff-bf2c-b4240f5b8e4a","html_url":"https://github.com/Mr-1311/wayland_layer_shell","commit_stats":null,"previous_names":["mr-1311/wayland_layer_shell"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Mr-1311/wayland_layer_shell","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mr-1311%2Fwayland_layer_shell","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mr-1311%2Fwayland_layer_shell/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mr-1311%2Fwayland_layer_shell/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mr-1311%2Fwayland_layer_shell/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Mr-1311","download_url":"https://codeload.github.com/Mr-1311/wayland_layer_shell/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mr-1311%2Fwayland_layer_shell/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30377838,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-11T06:09:32.197Z","status":"ssl_error","status_checked_at":"2026-03-11T06:09:17.086Z","response_time":84,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":[],"created_at":"2025-01-27T05:52:03.739Z","updated_at":"2026-03-11T10:06:50.049Z","avatar_url":"https://github.com/Mr-1311.png","language":"Dart","funding_links":[],"categories":[],"sub_categories":[],"readme":"# wayland_layer_shell\n\nThis plugin exposes the `zwlr_layer_shell_v1` protocol using the [gtk-layer-shell](https://github.com/wmww/gtk-layer-shell) library, enabling the creation of desktop components such as panels, taskbars, application launchers, etc. with Flutter on Wayland systems.\n\n## Supported Compositors\n\nThis plugin exclusively functions on Wayland and is compatible only with Wayland compositors that support the `zwlr_layer_shell_v1` protocol. The Layer Shell protocol is supported on:\n\n- wlroots-based compositors (such as Sway, Hyprland, etc.)\n- KDE Plasma on Wayland\n- Mir-based compositors (some may not enable the protocol by default and require `--add-wayland-extension zwlr_layer_shell_v1`)\n\nLayer Shell is not supported on:\n\n- Gnome-on-Wayland\n- Any X11 desktop\n\n## Getting Started\n\nAdd this to your project's pubspec.yaml file:\n\n```yaml\ndependencies:\n  wayland_layer_shell: ^1.0.1\n```\n\nUsing the gtk header bar and displaying the gtk window before initializing the layer surface prevents the initialization of the layer surface, hence some changes are required in Flutter's gtk window initialization code.\n\nUpdate the file `linux/runner/my_application.cc` as follows:\n\n```diff\n...\n\n// Implements GApplication::activate.\nstatic void my_application_activate(GApplication* application) {\n\n  ...\n\n- gboolean use_header_bar = TRUE;\n+ gboolean use_header_bar = FALSE;\n\n  ...\n  \n  gtk_window_set_default_size(window, 1280, 720);\n- gtk_widget_show(GTK_WIDGET(window));\n+ gtk_widget_realize(GTK_WIDGET(window));\n\n  g_autoptr(FlDartProject) project = fl_dart_project_new();\n\n...\n\n```\n\n## Dependencies\n\nThis plugin relies on the [gtk-layer-shell-0](https://github.com/wmww/gtk-layer-shell/tree/master) library. Ensure that it is available on the platforms where apps using this plugin are installed. The library can be found in the repositories of major distributions: [Distro packages](https://github.com/wmww/gtk-layer-shell?tab=readme-ov-file#distro-packages)\n\n## Usage\n\nFor usage check out the example app inside [example](./example) folder.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmr-1311%2Fwayland_layer_shell","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmr-1311%2Fwayland_layer_shell","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmr-1311%2Fwayland_layer_shell/lists"}