summaryrefslogtreecommitdiff
path: root/assets/outbox/Release v0.54.0 · hyprwm_Hyprland.html
diff options
context:
space:
mode:
Diffstat (limited to 'assets/outbox/Release v0.54.0 · hyprwm_Hyprland.html')
-rw-r--r--assets/outbox/Release v0.54.0 · hyprwm_Hyprland.html2345
1 files changed, 2345 insertions, 0 deletions
diff --git a/assets/outbox/Release v0.54.0 · hyprwm_Hyprland.html b/assets/outbox/Release v0.54.0 · hyprwm_Hyprland.html
new file mode 100644
index 0000000..61ed61d
--- /dev/null
+++ b/assets/outbox/Release v0.54.0 · hyprwm_Hyprland.html
@@ -0,0 +1,2345 @@
+<!DOCTYPE html>
+<!-- saved from url=(0055)https://github.com/hyprwm/Hyprland/releases/tag/v0.54.0 -->
+<html lang="en" data-color-mode="dark" data-light-theme="dark_dimmed" data-dark-theme="dark_high_contrast" data-a11y-animated-images="system" data-a11y-link-underlines="true" class="js-focus-visible" data-js-focus-visible="" data-turbo-loaded=""><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><style type="text/css">.turbo-progress-bar {
+ position: fixed;
+ display: block;
+ top: 0;
+ left: 0;
+ height: 3px;
+ background: #0076ff;
+ z-index: 2147483647;
+ transition:
+ width 300ms ease-out,
+ opacity 150ms 150ms ease-in;
+ transform: translate3d(0, 0, 0);
+}
+</style><style>
+:root {
+ --fontStack-monospace: "Monaspace Neon", ui-monospace, SFMono-Regular, SF Mono, Menlo, Consolas, Liberation Mono, monospace !important;
+}
+</style>
+
+
+
+
+
+
+ <link rel="dns-prefetch" href="https://github.githubassets.com/">
+ <link rel="dns-prefetch" href="https://avatars.githubusercontent.com/">
+ <link rel="dns-prefetch" href="https://github-cloud.s3.amazonaws.com/">
+ <link rel="dns-prefetch" href="https://user-images.githubusercontent.com/">
+ <link rel="preconnect" href="https://github.githubassets.com/" crossorigin="">
+ <link rel="preconnect" href="https://avatars.githubusercontent.com/">
+
+
+
+ <link crossorigin="anonymous" media="all" rel="stylesheet" href="./Release v0.54.0 · hyprwm_Hyprland_files/dark_high_contrast-18178c5e0f26dae5.css"><link data-color-theme="light" crossorigin="anonymous" media="all" rel="stylesheet" data-href="https://github.githubassets.com/assets/light-8810aba6e224dcba.css"><link data-color-theme="light_high_contrast" crossorigin="anonymous" media="all" rel="stylesheet" data-href="https://github.githubassets.com/assets/light_high_contrast-4bd5b16144e096b4.css"><link data-color-theme="light_colorblind" crossorigin="anonymous" media="all" rel="stylesheet" data-href="https://github.githubassets.com/assets/light_colorblind-f50d4b1ac9e848ec.css"><link data-color-theme="light_colorblind_high_contrast" crossorigin="anonymous" media="all" rel="stylesheet" data-href="https://github.githubassets.com/assets/light_colorblind_high_contrast-700c9067c7ae1651.css"><link data-color-theme="light_tritanopia" crossorigin="anonymous" media="all" rel="stylesheet" data-href="https://github.githubassets.com/assets/light_tritanopia-62a586066f3389e8.css"><link data-color-theme="light_tritanopia_high_contrast" crossorigin="anonymous" media="all" rel="stylesheet" data-href="https://github.githubassets.com/assets/light_tritanopia_high_contrast-85a906e7febabf13.css"><link data-color-theme="dark" crossorigin="anonymous" media="all" rel="stylesheet" data-href="https://github.githubassets.com/assets/dark-7b03b2414064dc76.css"><link data-color-theme="dark_colorblind" crossorigin="anonymous" media="all" rel="stylesheet" data-href="https://github.githubassets.com/assets/dark_colorblind-53940eefa8f29c9c.css"><link data-color-theme="dark_colorblind_high_contrast" crossorigin="anonymous" media="all" rel="stylesheet" data-href="https://github.githubassets.com/assets/dark_colorblind_high_contrast-69201c04269cdcfc.css"><link data-color-theme="dark_tritanopia" crossorigin="anonymous" media="all" rel="stylesheet" data-href="https://github.githubassets.com/assets/dark_tritanopia-f985d369f7cace4d.css"><link data-color-theme="dark_tritanopia_high_contrast" crossorigin="anonymous" media="all" rel="stylesheet" data-href="https://github.githubassets.com/assets/dark_tritanopia_high_contrast-b9a5a2394367911a.css"><link data-color-theme="dark_dimmed" crossorigin="anonymous" media="all" rel="stylesheet" data-href="https://github.githubassets.com/assets/dark_dimmed-9ae3a8be61562117.css"><link data-color-theme="dark_dimmed_high_contrast" crossorigin="anonymous" media="all" rel="stylesheet" data-href="https://github.githubassets.com/assets/dark_dimmed_high_contrast-3e78ff4649e84626.css">
+
+ <style type="text/css">
+ :root {
+ --tab-size-preference: 4;
+ }
+
+ pre, code {
+ tab-size: var(--tab-size-preference);
+ }
+ </style>
+
+ <link crossorigin="anonymous" media="all" rel="stylesheet" href="./Release v0.54.0 · hyprwm_Hyprland_files/primer-primitives-ef1311e26457f1ec.css">
+ <link crossorigin="anonymous" media="all" rel="stylesheet" href="./Release v0.54.0 · hyprwm_Hyprland_files/primer-8522af645b000615.css">
+ <link crossorigin="anonymous" media="all" rel="stylesheet" href="./Release v0.54.0 · hyprwm_Hyprland_files/global-94620c216484da1f.css">
+ <link crossorigin="anonymous" media="all" rel="stylesheet" href="./Release v0.54.0 · hyprwm_Hyprland_files/github-b184eb87701960eb.css">
+ <link crossorigin="anonymous" media="all" rel="stylesheet" href="./Release v0.54.0 · hyprwm_Hyprland_files/repository-64ac1f01eaa1d649.css">
+<link crossorigin="anonymous" media="all" rel="stylesheet" href="./Release v0.54.0 · hyprwm_Hyprland_files/releases-f43e2b303ae38689.css">
+
+
+
+ <script type="application/json" id="client-env">{"locale":"en","featureFlags":["a11y_status_checks_ruleset","actions_custom_images_public_preview_visibility","actions_custom_images_storage_billing_ui_visibility","actions_image_version_event","actions_workflow_language_service_allow_case_function","agent_session_retry_fetch_capi_on_401","alternate_user_config_repo","arianotify_comprehensive_migration","batch_suggested_changes","billing_ui_budget_pagination_enabled","codeowners_validation_in_diff","codespaces_prebuild_region_target_update","coding_agent_model_selection","coding_agent_model_selection_all_skus","comments_panel_issue_comments","contentful_primer_code_blocks","copilot_3p_agent_hovercards","copilot_agent_image_upload","copilot_agent_sessions_alive_updates","copilot_agent_snippy","copilot_agent_task_list_v2","copilot_agent_tasks_btn_code_nav","copilot_agent_tasks_btn_code_view","copilot_agent_tasks_btn_code_view_lines","copilot_agent_tasks_btn_repo","copilot_api_agentic_issue_marshal_yaml","copilot_ask_mode_dropdown","copilot_authors_decoupled_pr","copilot_chat_attach_multiple_images","copilot_chat_clear_model_selection_for_default_change","copilot_chat_disable_model_picker_while_streaming","copilot_chat_enable_tool_call_logs","copilot_chat_file_redirect","copilot_chat_input_commands","copilot_chat_opening_thread_switch","copilot_chat_reduce_quota_checks","copilot_chat_repository_picker","copilot_chat_search_bar_redirect","copilot_chat_selection_attachments","copilot_chat_vision_in_claude","copilot_chat_vision_preview_gate","copilot_cli_install_cta","copilot_code_review_batch_apply_suggestions","copilot_coding_agent_free_users_exp","copilot_coding_agent_task_response","copilot_custom_copilots","copilot_custom_copilots_feature_preview","copilot_duplicate_thread","copilot_extensions_hide_in_dotcom_chat","copilot_extensions_removal_on_marketplace","copilot_features_sql_server_logo","copilot_features_zed_logo","copilot_file_block_ref_matching","copilot_ftp_hyperspace_upgrade_prompt","copilot_icebreakers_experiment_dashboard","copilot_icebreakers_experiment_hyperspace","copilot_immersive_embedded","copilot_immersive_job_result_preview","copilot_immersive_layout_routes","copilot_immersive_structured_model_picker","copilot_immersive_task_hyperlinking","copilot_immersive_task_within_chat_thread","copilot_issue_list_show_more","copilot_mc_cli_resume_any_users_task","copilot_mission_control_always_send_integration_id","copilot_mission_control_use_task_name","copilot_org_policy_page_focus_mode","copilot_premium_request_quotas","copilot_redirect_header_button_to_agents","copilot_share_active_subthread","copilot_spaces_ga","copilot_spaces_individual_policies_ga","copilot_spaces_pagination","copilot_spark_empty_state","copilot_spark_handle_nil_friendly_name","copilot_swe_agent_hide_model_picker_if_only_auto","copilot_swe_agent_pr_comment_model_picker","copilot_swe_agent_use_subagents","copilot_unconfigured_is_inherited","copilot_usage_metrics_ga","cross_reference_lazy_permission_check","custom_instructions_file_references","custom_properties_consolidate_default_value_input","dashboard_indexeddb_caching","dashboard_lists_max_age_filter","dashboard_universe_2025","dashboard_universe_2025_feedback_dialog","dead_click_detection","disable_soft_navigate_turbo_visit","fgpat_permissions_selector_redesign","flex_cta_groups_mvp","global_account_switch_dialog_lazy_load","global_agents_menu_lazy_load","global_create_menu_lazy_load","global_nav_menu_lazy_load","global_nav_react","global_user_menu_lazy_load","hide_groups_list_for_few_groups","hyperspace_2025_logged_out_batch_1","hyperspace_2025_logged_out_batch_2","hyperspace_2025_logged_out_batch_3","initial_per_page_pagination_updates","ipm_global_transactional_message_agents","ipm_global_transactional_message_copilot","ipm_global_transactional_message_issues","ipm_global_transactional_message_prs","ipm_global_transactional_message_repos","ipm_global_transactional_message_spaces","issue_fields_global_search","issue_fields_timeline_events","issues_cca_assign_actor_with_agent","issues_dashboard_inp_optimization","issues_dashboard_semantic_search","issues_diff_based_label_updates","issues_expanded_file_types","issues_index_semantic_search","issues_lazy_load_comment_box_suggestions","issues_react_auto_retry_on_error","issues_react_bots_timeline_pagination","issues_react_chrome_container_query_fix","issues_react_custom_hpc_metric","issues_react_hot_cache","issues_react_include_bots_in_pickers","issues_react_low_quality_comment_warning","issues_react_preheating_discussions","issues_react_preheating_pulls","issues_react_prohibit_title_fallback","issues_react_resource_metrics","issues_react_safari_scroll_preservation","issues_react_ui_feedback","issues_react_use_turbo_for_cross_repo_navigation","landing_pages_ninetailed","landing_pages_web_vitals_tracking","lifecycle_label_name_updates","marketing_pages_search_explore_provider","memex_default_issue_create_repository","memex_grouped_by_edit_route","memex_live_update_hovercard","memex_mwl_filter_field_delimiter","memex_roadmap_drag_style","merge_status_header_feedback","mission_control_retry_on_401","mission_control_use_body_html","notifications_menu_defer_labels","nux_dashboard_refresh_scoped_portal","oauth_authorize_clickjacking_protection","open_agent_session_in_vscode_insiders","open_agent_session_in_vscode_stable","pr_sfv_new_diff_fetch","primer_react_css_has_selector_perf","primer_react_spinner_synchronize_animations","prs_checks_react","prs_conversations_react","prs_live_updates_issue_comments","prx_merge_status_button_alt_logic","pull_request_edit_button_redesign","pull_request_files_accurate_size_estimates","pull_request_files_virtualization","pull_request_merge_status_button","pull_request_virtualization_extended_limit","react_blob_overlay","react_compiler_code_view","react_quality_profiling","repository_suggester_elastic_search","ruleset_deletion_confirmation","sample_network_conn_type","session_logs_ungroup_reasoning_text","site_calculator_actions_2025","site_features_copilot_universe","site_homepage_collaborate_video","spark_prompt_secret_scanning","spark_server_connection_status","suppress_automated_browser_vitals","suppress_non_representative_vitals","viewscreen_sandbox","webp_support","workbench_store_readonly"],"login":"cjennings","copilotApiOverrideUrl":"https://api.individual.githubcopilot.com"}</script>
+<script crossorigin="anonymous" type="module" src="./Release v0.54.0 · hyprwm_Hyprland_files/wp-runtime-fb2e7725b23e7c08.js" defer="defer"></script>
+<script crossorigin="anonymous" type="module" src="./Release v0.54.0 · hyprwm_Hyprland_files/28839-632d00a964e8dbd5.js" defer="defer"></script>
+<script crossorigin="anonymous" type="module" src="./Release v0.54.0 · hyprwm_Hyprland_files/49863-8861e351482cb073.js" defer="defer"></script>
+<script crossorigin="anonymous" type="module" src="./Release v0.54.0 · hyprwm_Hyprland_files/34646-bc4bb033e1164ca1.js" defer="defer"></script>
+<script crossorigin="anonymous" type="module" src="./Release v0.54.0 · hyprwm_Hyprland_files/environment-e2415e9c118059f2.js" defer="defer"></script>
+<script crossorigin="anonymous" type="module" src="./Release v0.54.0 · hyprwm_Hyprland_files/runtime-helpers-3cd71e27e349021d.js" defer="defer"></script>
+<script crossorigin="anonymous" type="module" src="./Release v0.54.0 · hyprwm_Hyprland_files/2966-25cb8e34b31306a4.js" defer="defer"></script>
+<script crossorigin="anonymous" type="module" src="./Release v0.54.0 · hyprwm_Hyprland_files/96232-fb82336d69225835.js" defer="defer"></script>
+<script crossorigin="anonymous" type="module" src="./Release v0.54.0 · hyprwm_Hyprland_files/41013-ac21ea90ed8590af.js" defer="defer"></script>
+<script crossorigin="anonymous" type="module" src="./Release v0.54.0 · hyprwm_Hyprland_files/51210-185739338ae8119b.js" defer="defer"></script>
+<script crossorigin="anonymous" type="module" src="./Release v0.54.0 · hyprwm_Hyprland_files/24387-6b7f5e596897eded.js" defer="defer"></script>
+<script crossorigin="anonymous" type="module" src="./Release v0.54.0 · hyprwm_Hyprland_files/81683-740d112caee5baa9.js" defer="defer"></script>
+<script crossorigin="anonymous" type="module" src="./Release v0.54.0 · hyprwm_Hyprland_files/46740-67b26b07132f218b.js" defer="defer"></script>
+<script crossorigin="anonymous" type="module" src="./Release v0.54.0 · hyprwm_Hyprland_files/81751-aaa1687b311d9b3d.js" defer="defer"></script>
+<script crossorigin="anonymous" type="module" src="./Release v0.54.0 · hyprwm_Hyprland_files/github-elements-b03340a48949734e.js" defer="defer"></script>
+<script crossorigin="anonymous" type="module" src="./Release v0.54.0 · hyprwm_Hyprland_files/element-registry-9e799b115dbe41ba.js" defer="defer"></script>
+<script crossorigin="anonymous" type="module" src="./Release v0.54.0 · hyprwm_Hyprland_files/react-core-5860ae2cdde78efe.js" defer="defer"></script>
+<script crossorigin="anonymous" type="module" src="./Release v0.54.0 · hyprwm_Hyprland_files/react-lib-e74a1db7c21f7e74.js" defer="defer"></script>
+<script crossorigin="anonymous" type="module" src="./Release v0.54.0 · hyprwm_Hyprland_files/29434-2774a83323075b9c.js" defer="defer"></script>
+<script crossorigin="anonymous" type="module" src="./Release v0.54.0 · hyprwm_Hyprland_files/79039-9ce5da88e09eef89.js" defer="defer"></script>
+<script crossorigin="anonymous" type="module" src="./Release v0.54.0 · hyprwm_Hyprland_files/61110-212553c409076913.js" defer="defer"></script>
+<script crossorigin="anonymous" type="module" src="./Release v0.54.0 · hyprwm_Hyprland_files/2887-0e9a84f5dc250853.js" defer="defer"></script>
+<script crossorigin="anonymous" type="module" src="./Release v0.54.0 · hyprwm_Hyprland_files/26533-6b8040883d16f6ae.js" defer="defer"></script>
+<script crossorigin="anonymous" type="module" src="./Release v0.54.0 · hyprwm_Hyprland_files/62249-2895213a788d973c.js" defer="defer"></script>
+<script crossorigin="anonymous" type="module" src="./Release v0.54.0 · hyprwm_Hyprland_files/54195-705a8bfd0247e553.js" defer="defer"></script>
+<script crossorigin="anonymous" type="module" src="./Release v0.54.0 · hyprwm_Hyprland_files/54841-f360017e41e3b2e3.js" defer="defer"></script>
+<script crossorigin="anonymous" type="module" src="./Release v0.54.0 · hyprwm_Hyprland_files/60481-f092b7fbcf4211fc.js" defer="defer"></script>
+<script crossorigin="anonymous" type="module" src="./Release v0.54.0 · hyprwm_Hyprland_files/46287-3a392a5914d001c8.js" defer="defer"></script>
+<script crossorigin="anonymous" type="module" src="./Release v0.54.0 · hyprwm_Hyprland_files/2498-083e234c75c79413.js" defer="defer"></script>
+<script crossorigin="anonymous" type="module" src="./Release v0.54.0 · hyprwm_Hyprland_files/61075-47650057cbb78796.js" defer="defer"></script>
+<script crossorigin="anonymous" type="module" src="./Release v0.54.0 · hyprwm_Hyprland_files/89627-21527eb471b15df9.js" defer="defer"></script>
+<script crossorigin="anonymous" type="module" src="./Release v0.54.0 · hyprwm_Hyprland_files/49029-7e384f91a45df57b.js" defer="defer"></script>
+<script crossorigin="anonymous" type="module" src="./Release v0.54.0 · hyprwm_Hyprland_files/99328-c540c990523b92a2.js" defer="defer"></script>
+<script crossorigin="anonymous" type="module" src="./Release v0.54.0 · hyprwm_Hyprland_files/behaviors-01d4be4c98834668.js" defer="defer"></script>
+<link crossorigin="anonymous" media="all" rel="stylesheet" href="./Release v0.54.0 · hyprwm_Hyprland_files/react-core.2a1ca904939b8c9d.module.css">
+<script crossorigin="anonymous" type="module" src="./Release v0.54.0 · hyprwm_Hyprland_files/38302-277be92deeed3c63.js" defer="defer"></script>
+<script crossorigin="anonymous" type="module" src="./Release v0.54.0 · hyprwm_Hyprland_files/notifications-global-4c1d7ffc7e4545d2.js" defer="defer"></script>
+<script crossorigin="anonymous" type="module" src="./Release v0.54.0 · hyprwm_Hyprland_files/26093-41ccbaed136aa43d.js" defer="defer"></script>
+<script crossorigin="anonymous" type="module" src="./Release v0.54.0 · hyprwm_Hyprland_files/3064-ff9d0f819c141e10.js" defer="defer"></script>
+<script crossorigin="anonymous" type="module" src="./Release v0.54.0 · hyprwm_Hyprland_files/89756-e7c55d48f60b581d.js" defer="defer"></script>
+<script crossorigin="anonymous" type="module" src="./Release v0.54.0 · hyprwm_Hyprland_files/99291-ef227718ed886fe7.js" defer="defer"></script>
+<script crossorigin="anonymous" type="module" src="./Release v0.54.0 · hyprwm_Hyprland_files/19930-c75bca0d8b996295.js" defer="defer"></script>
+<script crossorigin="anonymous" type="module" src="./Release v0.54.0 · hyprwm_Hyprland_files/repositories-69e246d818d1c632.js" defer="defer"></script>
+
+
+ <title>Release v0.54.0 · hyprwm/Hyprland</title>
+
+
+
+ <meta name="route-pattern" content="/:user_id/:repository/releases/tag/*name" data-turbo-transient="">
+ <meta name="route-controller" content="releases" data-turbo-transient="">
+ <meta name="route-action" content="show" data-turbo-transient="">
+ <meta name="fetch-nonce" content="v2:20d102c3-9aa6-8fb8-b20f-17f6fa288bc7">
+
+
+ <meta name="current-catalog-service-hash" content="6f13f31f798a93a6b08d3be0727120e9af35851fac7b9c620d6cf9a70068c136">
+
+
+ <meta name="request-id" content="E914:1F3E88:1FB6534:2A1C84A:69AC4E27" data-turbo-transient="true"><meta name="html-safe-nonce" content="085fd245cd2976506e415f53137da6e60d64f7e64786816e79c77371342834aa" data-turbo-transient="true"><meta name="visitor-payload" content="eyJyZWZlcnJlciI6Imh0dHBzOi8vaHlwci5sYW5kLyIsInJlcXVlc3RfaWQiOiJFOTE0OjFGM0U4ODoxRkI2NTM0OjJBMUM4NEE6NjlBQzRFMjciLCJ2aXNpdG9yX2lkIjoiNjk4NjI2ODk0MTYwMTQwOTkxMyIsInJlZ2lvbl9lZGdlIjoiaWFkIiwicmVnaW9uX3JlbmRlciI6ImlhZCJ9" data-turbo-transient="true"><meta name="visitor-hmac" content="b8d0091b24d0df3bda0792fa0f41ad9145d3abea3dad5108d774c2a9b0c5c910" data-turbo-transient="true">
+
+
+ <meta name="hovercard-subject-tag" content="repository:470730648" data-turbo-transient="">
+
+
+ <meta name="github-keyboard-shortcuts" content="repository,copilot" data-turbo-transient="true">
+
+
+ <meta name="selected-link" value="repo_releases" data-turbo-transient="">
+ <link rel="assets" href="https://github.githubassets.com/">
+
+ <meta name="google-site-verification" content="Apib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I">
+
+<meta name="octolytics-url" content="https://collector.github.com/github/collect"><meta name="octolytics-actor-id" content="478233"><meta name="octolytics-actor-login" content="cjennings"><meta name="octolytics-actor-hash" content="67c4697ecc3ab2d87aa2b07078a955bb7232d9172e69a0347f88ed2b94ab52a1">
+
+
+
+
+
+ <meta name="analytics-location" content="/&lt;user-name&gt;/&lt;repo-name&gt;/releases/show" data-turbo-transient="true">
+
+
+
+
+
+
+ <meta name="user-login" content="cjennings">
+
+ <link rel="sudo-modal" href="https://github.com/sessions/sudo_modal">
+
+ <meta name="viewport" content="width=device-width">
+
+
+
+ <meta name="description" content="Hyprland is an independent, highly customizable, dynamic tiling Wayland compositor that doesn&#39;t sacrifice on its looks. - Release v0.54.0 · hyprwm/Hyprland">
+
+ <link rel="search" type="application/opensearchdescription+xml" href="https://github.com/opensearch.xml" title="GitHub">
+
+ <link rel="fluid-icon" href="https://github.com/fluidicon.png" title="GitHub">
+ <meta property="fb:app_id" content="1401488693436528">
+ <meta name="apple-itunes-app" content="app-id=1477376905, app-argument=https://github.com/hyprwm/Hyprland/releases/tag/v0.54.0">
+
+ <meta name="twitter:image" content="https://opengraph.githubassets.com/4fe81a71eccc2a20877b67a8a74ee90b2c6586aedff5b9b2d2188c1300e0700b/hyprwm/Hyprland/releases/tag/v0.54.0"><meta name="twitter:site" content="@github"><meta name="twitter:card" content="summary_large_image"><meta name="twitter:title" content="Release v0.54.0 · hyprwm/Hyprland"><meta name="twitter:description" content="A big (large), actually huge update for y&amp;#39;all!!
+Special thanks to our HIs (Human Intelligences) for powering Hyprland development.
+Breaking changes
+
+togglesplit and swapsplit have been removed ...">
+ <meta property="og:image" content="https://opengraph.githubassets.com/4fe81a71eccc2a20877b67a8a74ee90b2c6586aedff5b9b2d2188c1300e0700b/hyprwm/Hyprland/releases/tag/v0.54.0"><meta property="og:image:alt" content="A big (large), actually huge update for y&#39;all!!
+Special thanks to our HIs (Human Intelligences) for powering Hyprland development.
+Breaking changes
+
+togglesplit and swapsplit have been removed afte..."><meta property="og:image:width" content="1200"><meta property="og:image:height" content="600"><meta property="og:site_name" content="GitHub"><meta property="og:type" content="object"><meta property="og:title" content="Release v0.54.0 · hyprwm/Hyprland"><meta property="og:url" content="/hyprwm/Hyprland/releases/tag/v0.54.0"><meta property="og:description" content="A big (large), actually huge update for y&#39;all!!
+Special thanks to our HIs (Human Intelligences) for powering Hyprland development.
+Breaking changes
+
+togglesplit and swapsplit have been removed afte...">
+
+
+
+ <link rel="shared-web-socket" href="wss://alive.github.com/_sockets/u/478233/ws?session=eyJ2IjoiVjMiLCJ1Ijo0NzgyMzMsInMiOjE5NjE1MTU3NzYsImMiOjM1Njg1MjU3ODEsInQiOjE3NzI4OTk4Nzl9--485e6fa86c3be82cabb6d7f399551e8d60d26adb5fce55649ff5ab7095a7e27e" data-refresh-url="/_alive" data-session-id="a1da7d3f3c0b99a10433b42078e8fa71f5fb3b4f6f80699a522c73c2ef728888">
+ <link rel="shared-web-socket-src" href="https://github.com/assets-cdn/worker/socket-worker-46a02234a63e8cdc.js">
+
+
+ <meta name="hostname" content="github.com">
+
+
+ <meta name="keyboard-shortcuts-preference" content="all">
+ <meta name="hovercards-preference" content="true">
+ <meta name="announcement-preference-hovercard" content="true">
+
+ <meta name="expected-hostname" content="github.com">
+
+
+ <meta http-equiv="x-pjax-version" content="bef6130b083740fa99a30c15879f10a9fbb4391fd3f114e6ccb51a7d912f4e36" data-turbo-track="reload">
+ <meta http-equiv="x-pjax-csp-version" content="568c098497d98702bac1642a2a853732a047a6ced28eabd3e15d50041a890235" data-turbo-track="reload">
+ <meta http-equiv="x-pjax-css-version" content="a2132e0ea16d54dd57fa0b21e5aec0c60e5460e78ab22ee455585e88cba5e452" data-turbo-track="reload">
+ <meta http-equiv="x-pjax-js-version" content="4fd4dabb0e711a0b39d70ea696e39f28e73c5f362c4e0bed178bf3d9a3f83178" data-turbo-track="reload">
+
+ <meta name="turbo-cache-control" content="no-preview" data-turbo-transient="">
+
+ <meta name="go-import" content="github.com/hyprwm/Hyprland git https://github.com/hyprwm/Hyprland.git">
+
+ <meta name="octolytics-dimension-user_id" content="107882187"><meta name="octolytics-dimension-user_login" content="hyprwm"><meta name="octolytics-dimension-repository_id" content="470730648"><meta name="octolytics-dimension-repository_nwo" content="hyprwm/Hyprland"><meta name="octolytics-dimension-repository_public" content="true"><meta name="octolytics-dimension-repository_is_fork" content="false"><meta name="octolytics-dimension-repository_network_root_id" content="470730648"><meta name="octolytics-dimension-repository_network_root_nwo" content="hyprwm/Hyprland">
+
+
+
+
+
+ <meta name="turbo-body-classes" content="logged-in env-production page-responsive">
+ <meta name="disable-turbo" content="false">
+
+
+ <meta name="browser-stats-url" content="https://api.github.com/_private/browser/stats">
+
+ <meta name="browser-errors-url" content="https://api.github.com/_private/browser/errors">
+
+ <meta name="release" content="479a581a3686e777d65262fad673b4cc18c3196d">
+ <meta name="ui-target" content="full">
+
+ <link rel="mask-icon" href="https://github.githubassets.com/assets/pinned-octocat-093da3e6fa40.svg" color="#000000">
+ <link rel="alternate icon" class="js-site-favicon" type="image/png" href="https://github.githubassets.com/favicons/favicon-dark.png">
+ <link rel="icon" class="js-site-favicon" type="image/svg+xml" href="https://github.githubassets.com/favicons/favicon-dark.svg" data-base-href="https://github.githubassets.com/favicons/favicon">
+
+<meta name="theme-color" content="#1e2327">
+<meta name="color-scheme" content="dark light">
+
+
+ <link rel="manifest" href="https://github.com/manifest.json" crossorigin="use-credentials">
+
+ <link rel="stylesheet" type="text/css" href="./Release v0.54.0 · hyprwm_Hyprland_files/81758.889201dc8b3e3187.module.css" crossorigin="anonymous"><link rel="stylesheet" type="text/css" href="./Release v0.54.0 · hyprwm_Hyprland_files/38963.64708ed88465f895.module.css" crossorigin="anonymous"><style data-styled="active" data-styled-version="5.3.11"></style><link rel="stylesheet" type="text/css" href="./Release v0.54.0 · hyprwm_Hyprland_files/13683.cef42104c29c1298.module.css" crossorigin="anonymous"><link rel="stylesheet" type="text/css" href="./Release v0.54.0 · hyprwm_Hyprland_files/53839.f7a54d2fdd92f090.module.css" crossorigin="anonymous"><style id="ms-consent-banner-main-styles">.w8hcgFksdo30C8w-bygqu{color:#000}.ydkKdaztSS0AeHWIeIHsQ a{color:#0067B8}.erL690_8JwUW-R4bJRcfl{background-color:#EBEBEB;border:none;color:#000}.erL690_8JwUW-R4bJRcfl:enabled:hover{color:#000;background-color:#DBDBDB;box-shadow:0px 4px 10px rgba(0,0,0,0.25);border:none}.erL690_8JwUW-R4bJRcfl:enabled:focus{background-color:#DBDBDB;box-shadow:0px 4px 10px rgba(0,0,0,0.25);border:2px solid #000}.erL690_8JwUW-R4bJRcfl:disabled{opacity:1;color:rgba(0,0,0,0.2);background-color:rgba(0,0,0,0.2);border:none}._1zNQOqxpBFSokeCLGi_hGr{border:none;background-color:#0067B8;color:#fff}._1zNQOqxpBFSokeCLGi_hGr:enabled:hover{color:#fff;background-color:#0067B8;box-shadow:0px 4px 10px rgba(0,0,0,0.25);border:none}._1zNQOqxpBFSokeCLGi_hGr:enabled:focus{background-color:#0067B8;box-shadow:0px 4px 10px rgba(0,0,0,0.25);border:2px solid #000}._1zNQOqxpBFSokeCLGi_hGr:disabled{opacity:1;color:rgba(0,0,0,0.2);background-color:rgba(0,120,215,0.2);border:none}._23tra1HsiiP6cT-Cka-ycB{position:relative;display:flex;z-index:9999;width:100%;background-color:#F2F2F2;justify-content:space-between;text-align:left}div[dir="rtl"]._23tra1HsiiP6cT-Cka-ycB{text-align:right}._1Upc2NjY8AlDn177YoVj0y{margin:0;padding-left:5%;padding-top:8px;padding-bottom:8px}div[dir="rtl"] ._1Upc2NjY8AlDn177YoVj0y{margin:0;padding:8px 5% 8px 0;float:none}._23tra1HsiiP6cT-Cka-ycB svg{fill:none;max-width:none;max-height:none}._1V_hlU-7jdtPiooHMu89BB{display:table-cell;padding:12px;width:24px;height:24px;font-family:Segoe UI, SegoeUI, Arial, sans-serif;font-style:normal;font-weight:normal;font-size:24px;line-height:0}.f6QKJD7fhSbnJLarTL-W-{display:table-cell;vertical-align:middle;padding:0;font-family:Segoe UI, SegoeUI, Arial, sans-serif;font-style:normal;font-weight:normal;font-size:13px;line-height:16px}.f6QKJD7fhSbnJLarTL-W- a{text-decoration:underline}._2j0fmugLb1FgYz6KPuB91w{display:inline-block;margin-left:5%;margin-right:5%;min-width:40%;min-width:calc((150px + 3 * 4px) * 2 + 150px);min-width:-webkit-fit-content;min-width:-moz-fit-content;min-width:fit-content;align-self:center;position:relative}._1XuCi2WhiqeWRUVp3pnFG3{margin:4px;padding:5px;min-width:150px;min-height:36px;vertical-align:top;cursor:pointer;font-family:Segoe UI, SegoeUI, Arial, sans-serif;font-style:normal;font-weight:normal;font-size:15px;line-height:20px;text-align:center}._1XuCi2WhiqeWRUVp3pnFG3:focus{box-sizing:border-box}._1XuCi2WhiqeWRUVp3pnFG3:disabled{cursor:not-allowed}._2bvsb3ubApyZ0UGoQA9O9T{display:block;position:fixed;z-index:10000;top:0;left:0;width:100%;height:100%;background-color:rgba(255,255,255,0.6);overflow:auto;text-align:left}div[dir="rtl"]._2bvsb3ubApyZ0UGoQA9O9T{text-align:right}div[dir="rtl"] ._2bvsb3ubApyZ0UGoQA9O9T{left:auto;right:0}.AFsJE948muYyzCMktdzuk{position:relative;top:8%;margin-bottom:40px;margin-left:auto;margin-right:auto;box-sizing:border-box;width:640px;background-color:#fff;border:1px solid #0067B8}._3kWyBRbW_dgnMiEyx06Fu4{float:right;z-index:1;margin:2px;padding:12px;border:none;cursor:pointer;font-family:Segoe UI, SegoeUI, Arial, sans-serif;font-style:normal;font-weight:normal;font-size:13px;line-height:13px;display:flex;align-items:center;text-align:center;color:#666;background-color:#fff}div[dir="rtl"] ._3kWyBRbW_dgnMiEyx06Fu4{margin:2px;padding:12px;float:left}.uCYvKvHXrhjNgflv1VqdD{position:static;margin-top:36px;margin-left:36px;margin-right:36px}._17pX1m9O_W--iZbDt3Ta5r{margin-top:0;margin-bottom:12px;font-family:Segoe UI, SegoeUI, Arial, sans-serif;font-style:normal;font-weight:600;font-size:20px;line-height:24px;text-transform:none}._1kBkHQ1V1wu3kl-YcLgUr6{height:446px;overflow:auto}._20_nXDf6uFs9Q6wxRXG-I-{margin-top:0;font-family:Segoe UI, SegoeUI, Arial, sans-serif;font-style:normal;font-weight:normal;font-size:15px;line-height:20px}._20_nXDf6uFs9Q6wxRXG-I- a{text-decoration:underline}dl._2a0NH_GDQEQe5Ynfo7suVH{margin-top:36px;margin-bottom:0;padding:0;list-style:none;text-transform:none}dt._3j_LCPv7fyXv3A8FIXVwZ4{margin-top:20px;float:none;font-family:Segoe UI, SegoeUI, Arial, sans-serif;font-style:normal;font-weight:600;font-size:18px;line-height:24px;list-style:none}.k-vxTGFbdq1aOZB2HHpjh{margin:0;padding:0;border:none}._2Bucyy75c_ogoU1g-liB5R{margin:0;padding:0;border-bottom:none;font-family:Segoe UI, SegoeUI, Arial, sans-serif;font-style:normal;font-weight:600;font-size:18px;line-height:24px;text-transform:none}._63gwfzV8dclrsl2cfd90r{display:inline-block;margin-top:0;margin-bottom:13px;font-family:Segoe UI, SegoeUI, Arial, sans-serif;font-style:normal;font-weight:normal;font-size:15px;line-height:20px}._1l8wM_4mRYGz3Iu7l3BZR7{display:block}._2UE03QS02aZGkslegN_F-i{display:inline-block;position:relative;left:5px;margin-bottom:13px;margin-right:34px;padding:3px}div[dir="rtl"] ._2UE03QS02aZGkslegN_F-i{margin:0 0 13px 34px;padding:3px;float:none}div[dir="rtl"] ._2UE03QS02aZGkslegN_F-i{left:auto;right:5px}._23tra1HsiiP6cT-Cka-ycB *::before,._2bvsb3ubApyZ0UGoQA9O9T *::before,._23tra1HsiiP6cT-Cka-ycB *::after,._2bvsb3ubApyZ0UGoQA9O9T *::after{box-sizing:inherit}._1HSFn0HzGo6w4ADApV8-c4{outline:2px solid rgba(0,0,0,0.8)}input[type="radio"]._1dp8Vp5m3HwAqGx8qBmFV2{display:inline-block;position:relative;margin-top:0;margin-left:0;margin-right:0;height:0;width:0;border-radius:0;cursor:pointer;outline:none;box-sizing:border-box;-webkit-appearance:none;-moz-appearance:none;appearance:none}input[type="radio"]._1dp8Vp5m3HwAqGx8qBmFV2+label::before{display:block;position:absolute;top:5px;left:3px;height:19px;width:19px;content:"";border-radius:50%;border:1px solid #000;background-color:#fff}div[dir="rtl"] input[type="radio"]._1dp8Vp5m3HwAqGx8qBmFV2+label::before{left:auto;right:3px}input[type="radio"]._1dp8Vp5m3HwAqGx8qBmFV2:not(:disabled)+label:hover::before{border:1px solid #0067B8}input[type="radio"]._1dp8Vp5m3HwAqGx8qBmFV2:not(:disabled)+label:hover::after{display:block;position:absolute;top:10px;left:8px;height:9px;width:9px;content:"";border-radius:50%;background-color:rgba(0,0,0,0.8)}div[dir="rtl"] input[type="radio"]._1dp8Vp5m3HwAqGx8qBmFV2:not(:disabled)+label:hover::after{left:auto;right:8px}input[type="radio"]._1dp8Vp5m3HwAqGx8qBmFV2:not(:disabled)+label:focus::before{border:1px solid #0067B8}input[type="radio"]._1dp8Vp5m3HwAqGx8qBmFV2:not(:disabled)+label:focus::after{display:block;position:absolute;top:10px;left:8px;height:9px;width:9px;content:"";border-radius:50%;background-color:#000}div[dir="rtl"] input[type="radio"]._1dp8Vp5m3HwAqGx8qBmFV2:not(:disabled)+label:focus::after{left:auto;right:8px}input[type="radio"]._1dp8Vp5m3HwAqGx8qBmFV2:checked+label::after{display:block;position:absolute;top:10px;left:8px;height:9px;width:9px;content:"";border-radius:50%;background-color:#000}div[dir="rtl"] input[type="radio"]._1dp8Vp5m3HwAqGx8qBmFV2:checked+label::after{left:auto;right:8px}input[type="radio"]._1dp8Vp5m3HwAqGx8qBmFV2:disabled+label{cursor:not-allowed}input[type="radio"]._1dp8Vp5m3HwAqGx8qBmFV2:disabled+label::before{border:1px solid rgba(0,0,0,0.2);background-color:rgba(0,0,0,0.2)}._3RJzeL3l9Rl_lAQEm6VwdX{display:block;position:static;float:right;margin-top:0;margin-bottom:0;margin-left:19px;margin-right:0;padding-top:0;padding-bottom:0;padding-left:8px;padding-right:0;width:80%;width:calc(100% - 19px);font-family:Segoe UI, SegoeUI, Arial, sans-serif;font-style:normal;font-weight:normal;font-size:15px;line-height:20px;text-transform:none;cursor:pointer;box-sizing:border-box}div[dir="rtl"] ._3RJzeL3l9Rl_lAQEm6VwdX{margin:0 19px 0 0;padding:0 8px 0 0;float:left}.nohp3sIG12ZBhzcMnPala{margin-top:20px;margin-bottom:48px}._2uhaEsmeotZ3P-M0AXo2kF{padding:0;width:278px;height:36px;cursor:pointer;font-family:Segoe UI, SegoeUI, Arial, sans-serif;font-style:normal;font-weight:normal;font-size:15px;line-height:20px;text-align:center}._2uhaEsmeotZ3P-M0AXo2kF:focus{box-sizing:border-box}._2uhaEsmeotZ3P-M0AXo2kF:disabled{cursor:not-allowed}._3tOu1FJ59c_xz_PmI1lKV5{float:right;padding:0;width:278px;height:36px;cursor:pointer;font-family:Segoe UI, SegoeUI, Arial, sans-serif;font-style:normal;font-weight:normal;font-size:15px;line-height:20px;text-align:center}._3tOu1FJ59c_xz_PmI1lKV5:focus{box-sizing:border-box}._3tOu1FJ59c_xz_PmI1lKV5:disabled{cursor:not-allowed}div[dir="rtl"] ._3tOu1FJ59c_xz_PmI1lKV5{margin:0;padding:0;float:left}@media only screen and (max-width: 768px){._2j0fmugLb1FgYz6KPuB91w,._1Upc2NjY8AlDn177YoVj0y{padding-top:8px;padding-bottom:12px;padding-left:3.75%;padding-right:3.75%;margin:0;width:92.5%}._23tra1HsiiP6cT-Cka-ycB{display:block}._1XuCi2WhiqeWRUVp3pnFG3{margin-bottom:8px;margin-left:0;margin-right:0;width:100%}._2bvsb3ubApyZ0UGoQA9O9T{overflow:hidden}.AFsJE948muYyzCMktdzuk{top:1.8%;width:93.33%;height:96.4%;overflow:hidden}.uCYvKvHXrhjNgflv1VqdD{margin-top:24px;margin-left:24px;margin-right:24px;height:100%}._1kBkHQ1V1wu3kl-YcLgUr6{height:62%;height:calc(100% - 188px);min-height:50%}._2uhaEsmeotZ3P-M0AXo2kF{width:100%}._3tOu1FJ59c_xz_PmI1lKV5{margin-bottom:12px;margin-left:0;width:100%}div[dir="rtl"] ._3tOu1FJ59c_xz_PmI1lKV5{margin:0 0 12px 0;padding:0;float:none}}@media only screen and (max-width: 768px) and (orientation: landscape), only screen and (max-height: 260px), only screen and (max-width: 340px){.AFsJE948muYyzCMktdzuk{overflow:auto}}@media only screen and (max-height: 260px), only screen and (max-width: 340px){._1XuCi2WhiqeWRUVp3pnFG3{min-width:0}._3kWyBRbW_dgnMiEyx06Fu4{padding:3%}.uCYvKvHXrhjNgflv1VqdD{margin-top:3%;margin-left:3%;margin-right:3%}._17pX1m9O_W--iZbDt3Ta5r{margin-bottom:3%}._1kBkHQ1V1wu3kl-YcLgUr6{height:calc(79% - 64px)}.nohp3sIG12ZBhzcMnPala{margin-top:5%;margin-bottom:10%}._3tOu1FJ59c_xz_PmI1lKV5{margin-bottom:3%}div[dir="rtl"] ._3tOu1FJ59c_xz_PmI1lKV5{margin:0 0 3% 0;padding:0;float:none}}
+</style><style type="text/css" id="ms-consent-banner-theme-styles">._23tra1HsiiP6cT-Cka-ycB {
+ background-color: #24292f !important;
+ }.w8hcgFksdo30C8w-bygqu {
+ color: #ffffff !important;
+ }.ydkKdaztSS0AeHWIeIHsQ a {
+ color: #d8b9ff !important;
+ }._2bvsb3ubApyZ0UGoQA9O9T {
+ background-color: rgba(23, 23, 23, 0.8) !important;
+ }.AFsJE948muYyzCMktdzuk {
+ background-color: #24292f !important;
+ border: 1px solid #d8b9ff !important;
+ }._3kWyBRbW_dgnMiEyx06Fu4 {
+ color: #d8b9ff !important;
+ background-color: #24292f !important;
+ }._1zNQOqxpBFSokeCLGi_hGr {
+ border: 1px solid #ffffff !important;
+ background-color: #ffffff !important;
+ color: #1f2328 !important;
+ }._1zNQOqxpBFSokeCLGi_hGr:enabled:hover {
+ color: #1f2328 !important;
+ background-color: #d8b9ff !important;
+ box-shadow: none !important;
+ border: 1px solid transparent !important;
+ }._1zNQOqxpBFSokeCLGi_hGr:enabled:focus {
+ background-color: #d8b9ff !important;
+ box-shadow: none !important;
+ border: 2px solid #ffffff !important;
+ }._1zNQOqxpBFSokeCLGi_hGr:disabled {
+ opacity: 0.5 !important;
+ color: #1f2328 !important;
+ background-color: #ffffff !important;
+ border: 1px solid transparent !important;
+ }.erL690_8JwUW-R4bJRcfl {
+ border: 1px solid #eaeef2 !important;
+ background-color: #32383f !important;
+ color: #ffffff !important;
+ }.erL690_8JwUW-R4bJRcfl:enabled:hover {
+ color: #ffffff !important;
+ background-color: #24292f !important;
+ box-shadow: none !important;
+ border: 1px solid #ffffff !important;
+ }.erL690_8JwUW-R4bJRcfl:enabled:focus {
+ background-color: #24292f !important;
+ box-shadow: none !important;
+ border: 2px solid #6e7781 !important;
+ }.erL690_8JwUW-R4bJRcfl:disabled {
+ opacity: 0.5 !important;
+ color: #ffffff !important;
+ background-color: #424a53 !important;
+ border: 1px solid #6e7781 !important;
+ }input[type="radio"]._1dp8Vp5m3HwAqGx8qBmFV2 + label::before {
+ border: 1px solid #d8b9ff !important;
+ background-color: #24292f !important;
+ }._1HSFn0HzGo6w4ADApV8-c4 {
+ outline: 2px solid #ffffff !important;
+ }input[type="radio"]._1dp8Vp5m3HwAqGx8qBmFV2:checked + label::after {
+ background-color: #d8b9ff !important;
+ }input[type="radio"]._1dp8Vp5m3HwAqGx8qBmFV2 + label:hover::before {
+ border: 1px solid #ffffff !important;
+ }input[type="radio"]._1dp8Vp5m3HwAqGx8qBmFV2 + label:hover::after {
+ background-color: #ffffff !important;
+ }input[type="radio"]._1dp8Vp5m3HwAqGx8qBmFV2 + label:focus::before {
+ border: 1px solid #ffffff !important;
+ }input[type="radio"]._1dp8Vp5m3HwAqGx8qBmFV2 + label:focus::after {
+ background-color: #d8b9ff !important;
+ }input[type="radio"]._1dp8Vp5m3HwAqGx8qBmFV2:disabled + label::before {
+ border: 1px solid rgba(227, 227, 227, 0.2) !important;
+ background-color: rgba(227, 227, 227, 0.2) !important;
+ }</style><link rel="stylesheet" type="text/css" href="./Release v0.54.0 · hyprwm_Hyprland_files/61975.27b0c4f7e448db1f.module.css" crossorigin="anonymous"><link rel="stylesheet" type="text/css" href="./Release v0.54.0 · hyprwm_Hyprland_files/30352.78f9ef6769ebb8c4.module.css" crossorigin="anonymous"><link rel="stylesheet" type="text/css" href="./Release v0.54.0 · hyprwm_Hyprland_files/40753.e8d041bba3a563e9.module.css" crossorigin="anonymous"><link rel="stylesheet" type="text/css" href="./Release v0.54.0 · hyprwm_Hyprland_files/82588.038c8744b7573bb2.module.css" crossorigin="anonymous"><link rel="stylesheet" type="text/css" href="./Release v0.54.0 · hyprwm_Hyprland_files/78292.d251c42efbfc2234.module.css" crossorigin="anonymous"><link rel="stylesheet" type="text/css" href="./Release v0.54.0 · hyprwm_Hyprland_files/47475.a688313ecacb64e9.module.css" crossorigin="anonymous"><link rel="stylesheet" type="text/css" href="./Release v0.54.0 · hyprwm_Hyprland_files/70595.91249dde9ab8f5fe.module.css" crossorigin="anonymous"><link rel="stylesheet" type="text/css" href="./Release v0.54.0 · hyprwm_Hyprland_files/52458.d1a65d23a47d71c6.module.css" crossorigin="anonymous"><link rel="stylesheet" type="text/css" href="./Release v0.54.0 · hyprwm_Hyprland_files/9230.92b967a4bd77af6f.module.css" crossorigin="anonymous"><link rel="stylesheet" type="text/css" href="./Release v0.54.0 · hyprwm_Hyprland_files/12408.237bdd93022460bd.module.css" crossorigin="anonymous"><link rel="stylesheet" type="text/css" href="./Release v0.54.0 · hyprwm_Hyprland_files/24258.e83217a02430ac00.module.css" crossorigin="anonymous"><link rel="stylesheet" type="text/css" href="./Release v0.54.0 · hyprwm_Hyprland_files/98036.0fda93dc5b211084.module.css" crossorigin="anonymous"><link rel="stylesheet" type="text/css" href="./Release v0.54.0 · hyprwm_Hyprland_files/73205.9622507196f47a6b.module.css" crossorigin="anonymous"><link rel="stylesheet" type="text/css" href="./Release v0.54.0 · hyprwm_Hyprland_files/68320.fd840dde2fb886f9.module.css" crossorigin="anonymous"><link rel="stylesheet" type="text/css" href="./Release v0.54.0 · hyprwm_Hyprland_files/30285.fd86ad1ec91c23db.module.css" crossorigin="anonymous"><link rel="stylesheet" type="text/css" href="./Release v0.54.0 · hyprwm_Hyprland_files/85297.7a76c4a8bf24f634.module.css" crossorigin="anonymous"><link rel="stylesheet" type="text/css" href="./Release v0.54.0 · hyprwm_Hyprland_files/17787.aec19b10688b1ad9.module.css" crossorigin="anonymous"><link rel="stylesheet" type="text/css" href="./Release v0.54.0 · hyprwm_Hyprland_files/88769.e6c2613991ac2d15.module.css" crossorigin="anonymous"><link rel="stylesheet" type="text/css" href="./Release v0.54.0 · hyprwm_Hyprland_files/21503.984c0ed9b172df9c.module.css" crossorigin="anonymous"><link rel="stylesheet" type="text/css" href="./Release v0.54.0 · hyprwm_Hyprland_files/75817.aada9643d151a354.module.css" crossorigin="anonymous"><link rel="stylesheet" type="text/css" href="./Release v0.54.0 · hyprwm_Hyprland_files/36566.3576989659801d28.module.css" crossorigin="anonymous"></head>
+
+ <body class="logged-in env-production page-responsive" style="word-wrap: break-word;" data-dialog-scroll-optimized="">
+ <div data-turbo-body="" class="logged-in env-production page-responsive" style="word-wrap: break-word;">
+ <div id="__primerPortalRoot__" role="region" style="z-index: 1000; position: absolute; width: 100%;" data-turbo-permanent=""></div>
+
+
+ <div class="position-relative header-wrapper js-header-wrapper ">
+ <a href="https://github.com/hyprwm/Hyprland/releases/tag/v0.54.0#start-of-content" data-skip-target-assigned="false" class="tmp-p-3 color-bg-accent-emphasis color-fg-on-emphasis show-on-focus js-skip-to-content">Skip to content</a>
+
+ <span data-view-component="true" class="progress-pjax-loader Progress position-fixed width-full">
+ <span style="width: 0%;" data-view-component="true" class="Progress-item progress-pjax-loader-bar left-0 top-0 color-bg-accent-emphasis"></span>
+</span>
+
+ <link crossorigin="anonymous" media="all" rel="stylesheet" href="./Release v0.54.0 · hyprwm_Hyprland_files/primer-react-css.61b70c84b7035dae.module.css">
+<link crossorigin="anonymous" media="all" rel="stylesheet" href="./Release v0.54.0 · hyprwm_Hyprland_files/keyboard-shortcuts-dialog.1bdd91d4ab12f4fb.module.css">
+
+<react-partial partial-name="keyboard-shortcuts-dialog" data-ssr="false" data-attempted-ssr="false" data-react-profiling="true" data-catalyst="" class="loaded">
+
+ <script type="application/json" data-target="react-partial.embeddedData">{"props":{"docsUrl":"https://docs.github.com/get-started/accessibility/keyboard-shortcuts"}}</script>
+ <div data-target="react-partial.reactRoot"><div class="d-none"></div><script type="application/json" id="__PRIMER_DATA__r_0___">{"resolvedServerColorMode":"night"}</script></div>
+</react-partial>
+
+
+
+
+
+
+
+
+
+ <link crossorigin="anonymous" media="all" rel="stylesheet" href="./Release v0.54.0 · hyprwm_Hyprland_files/primer-react-css.61b70c84b7035dae.module.css">
+<link crossorigin="anonymous" media="all" rel="stylesheet" href="./Release v0.54.0 · hyprwm_Hyprland_files/global-nav-bar.e6ef2c445177f03e.module.css">
+
+<react-partial partial-name="global-nav-bar" data-ssr="true" data-attempted-ssr="true" data-react-profiling="true" data-catalyst="" class="loaded">
+
+ <script type="application/json" data-target="react-partial.embeddedData">{"props":{"contextRegion":{"crumbs":[{"crumb_type":"organization","label":"hyprwm","is_root":false,"href":"/hyprwm"},{"crumb_type":"repository","label":"Hyprland","is_root":false,"href":"/hyprwm/Hyprland"}],"localNavigation":[{"id":"code","icon":"code","label":"Code","href":"/hyprwm/Hyprland","selectedLinks":["repo_source","repo_downloads","repo_commits","repo_releases","repo_tags","repo_branches","repo_packages","repo_deployments","repo_attestations"],"popoverTarget":false,"hotkey":"g c","reactNav":{"appTarget":"code-view","anchor":"code-view-repo-link"},"turboNav":{"frame":"repo-content-turbo-frame"}},{"id":"issues","icon":"issue-opened","label":"Issues","href":"/hyprwm/Hyprland/issues","selectedLinks":["repo_issues","repo_labels","repo_milestones"],"count":59,"popoverTarget":false,"hotkey":"g i","reactNav":{"appTarget":"issues-react","anchor":null},"turboNav":{"frame":"repo-content-turbo-frame"}},{"id":"pull-requests","icon":"git-pull-request","label":"Pull requests","href":"/hyprwm/Hyprland/pulls","selectedLinks":["repo_pulls","checks"],"count":109,"popoverTarget":false,"hotkey":"g p","reactNav":{"appTarget":null,"anchor":null},"turboNav":{"frame":"repo-content-turbo-frame"}},{"id":"discussions","icon":"comment-discussion","label":"Discussions","href":"/hyprwm/Hyprland/discussions","selectedLinks":["repo_discussions"],"popoverTarget":false,"hotkey":"g g","reactNav":{"appTarget":null,"anchor":null},"turboNav":{"frame":"repo-content-turbo-frame"}},{"id":"actions","icon":"play","label":"Actions","href":"/hyprwm/Hyprland/actions","selectedLinks":["repo_actions"],"popoverTarget":false,"hotkey":"g a","reactNav":{"appTarget":null,"anchor":null},"turboNav":{"frame":"repo-content-turbo-frame"}},{"id":"projects","icon":"table","label":"Projects","href":"/hyprwm/Hyprland/projects","selectedLinks":["repo_projects","new_repo_project","repo_project"],"popoverTarget":false,"hotkey":"g b","reactNav":{"appTarget":null,"anchor":null},"turboNav":{"frame":"repo-content-turbo-frame"}},{"id":"wiki","icon":"book","label":"Wiki","href":"/hyprwm/Hyprland/wiki","selectedLinks":["repo_wiki"],"popoverTarget":false,"hotkey":"g w","reactNav":{"appTarget":null,"anchor":null},"turboNav":{"frame":"repo-content-turbo-frame"}},{"id":"security","icon":"shield","label":"Security","href":"/hyprwm/Hyprland/security","selectedLinks":["security","overview","alerts","policy","token_scanning","code_scanning"],"count":0,"popoverTarget":false,"hotkey":"g s","reactNav":{"appTarget":null,"anchor":null},"turboNav":{"frame":"repo-content-turbo-frame"}},{"id":"insights","icon":"graph","label":"Insights","href":"/hyprwm/Hyprland/pulse","selectedLinks":["repo_graphs","repo_contributors","dependency_graph","dependabot_updates","pulse","people","community"],"popoverTarget":false,"reactNav":{"appTarget":null,"anchor":null},"turboNav":{"frame":"repo-content-turbo-frame"}}],"localNavigationUpdateChannel":"eyJjIjoicmVwbzo0NzA3MzA2NDg6dXNlcjo0NzgyMzM6c2V0dGluZ3MiLCJ0IjoxNzcyODk5ODc5fQ==--9cd2d2ccd36650d81a3d1e548d39e43ebd506beae5d99a94a0ec8b4d9e452a92","selectedLink":"repo_releases"},"navMenu":{},"accountSwitchDialog":{},"userMenu":{"owner":{"login":"cjennings","name":"Craig Jennings","avatarUrl":"https://avatars.githubusercontent.com/u/478233?v=4"}},"createMenu":{},"headerLogo":{"href":"/","hotkey":"g d","aria-label":"Homepage "},"notifications":{"hotkey":"g n","indicatorMode":"none","websocketChannel":"eyJjIjoibm90aWZpY2F0aW9uLWNoYW5nZWQ6NDc4MjMzIiwidCI6MTc3Mjg5OTg3OX0=--2e36e7120404f5806b3fbc84b0612109802ce181907d57219112cdbc70b94077","fetchIndicatorSrc":"/notifications/indicator","fetchIndicatorEnabled":true},"issues":{"href":"/issues","hotkey":null},"pulls":{"href":"/pulls","hotkey":null},"contributedRepos":{"show":true,"href":"/repos"},"copilot":{"show":true,"showAgentsButton":false,"copilotChatUrl":"/github-copilot/chat?skip_anchor=true","copilotApiUrl":"https://api.individual.githubcopilot.com","agentsPanel":{}},"search":{"show":true,"searchHotkey":"s,/","showCommandPalette":false,"commandPaletteHotkey":null,"isSearchPage":false,"isJumpToSearch":false,"fragmentsPath":"/_global-navigation/fragments","fragmentsParams":""},"enterpriseBanner":{"show":false},"globalTransactionalMessage":null,"payloadsUrl":"/_global-navigation/payloads.json?current_repo_nwo=hyprwm%2FHyprland\u0026org=hyprwm\u0026repository=Hyprland\u0026return_to=https%3A%2F%2Fgithub.com%2Fhyprwm%2FHyprland%2Freleases%2Ftag%2Fv0.54.0\u0026user_id=hyprwm"}}</script>
+ <div data-target="react-partial.reactRoot"><link rel="preload" as="image" href="./Release v0.54.0 · hyprwm_Hyprland_files/478233"><header role="banner" aria-label="Global Navigation Menu" class="GlobalNav styles-module__appHeader__YzYWk prc-Stack-Stack-UQ9k6" data-gap="none" data-direction="vertical" data-align="stretch" data-wrap="nowrap" data-justify="start" data-padding="none"><div class="prc-Stack-Stack-UQ9k6" data-direction="horizontal" data-align="center" data-wrap="nowrap" data-justify="center" data-padding="none"><div data-testid="top-nav-left" class="styles-module__left__Fylw7 styles-module__withLocalNavigation__rjTJ_ prc-Stack-Stack-UQ9k6" data-gap="condensed" data-direction="horizontal" data-align="stretch" data-wrap="nowrap" data-justify="start" data-padding="normal"><div data-loading-wrapper="true"><button data-component="IconButton" type="button" aria-haspopup="dialog" class="prc-Button-ButtonBase-9n-Xk styles-module__appHeaderButton__axedQ prc-Button-IconButton-fyge7" data-loading="false" data-no-visuals="true" data-size="medium" data-variant="invisible" aria-labelledby="_R_apb_"><svg aria-hidden="true" focusable="false" class="octicon octicon-three-bars" viewBox="0 0 16 16" width="16" height="16" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="M1 2.75A.75.75 0 0 1 1.75 2h12.5a.75.75 0 0 1 0 1.5H1.75A.75.75 0 0 1 1 2.75Zm0 5A.75.75 0 0 1 1.75 7h12.5a.75.75 0 0 1 0 1.5H1.75A.75.75 0 0 1 1 7.75ZM1.75 12h12.5a.75.75 0 0 1 0 1.5H1.75a.75.75 0 0 1 0-1.5Z"></path></svg></button></div><span class="prc-TooltipV2-Tooltip-tLeuB" data-direction="s" aria-hidden="true" id="_R_apb_" popover="auto">Open menu</span><div class="d-none"><li data-has-description="false" class="prc-ActionList-ActionListItem-So4vC"><a class="prc-ActionList-ActionListContent-KBb8- prc-Link-Link-9ZwDx" tabindex="0" aria-labelledby="_r_2_--label " id="_r_2_" data-size="medium" href="https://github.com/dashboard" data-testid="side-nav-menu-item-HOME" style="--subitem-depth: 0;"><span class="prc-ActionList-Spacer-4tR2m"></span><span class="prc-ActionList-LeadingVisual-NBr28 prc-ActionList-VisualWrap-bdCsS"><svg aria-hidden="true" focusable="false" class="octicon octicon-home" viewBox="0 0 16 16" width="16" height="16" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align: text-bottom;"><path d="M6.906.664a1.749 1.749 0 0 1 2.187 0l5.25 4.2c.415.332.657.835.657 1.367v7.019A1.75 1.75 0 0 1 13.25 15h-3.5a.75.75 0 0 1-.75-.75V9H7v5.25a.75.75 0 0 1-.75.75h-3.5A1.75 1.75 0 0 1 1 13.25V6.23c0-.531.242-1.034.657-1.366l5.25-4.2Zm1.25 1.171a.25.25 0 0 0-.312 0l-5.25 4.2a.25.25 0 0 0-.094.196v7.019c0 .138.112.25.25.25H5.5V8.25a.75.75 0 0 1 .75-.75h3.5a.75.75 0 0 1 .75.75v5.25h2.75a.25.25 0 0 0 .25-.25V6.23a.25.25 0 0 0-.094-.195Z"></path></svg></span><span class="prc-ActionList-ActionListSubContent-gKsFp" data-component="ActionList.Item--DividerContainer"><span id="_r_2_--label" class="prc-ActionList-ItemLabel-81ohH">Home</span></span></a></li><li data-has-description="false" class="prc-ActionList-ActionListItem-So4vC"><a class="prc-ActionList-ActionListContent-KBb8- prc-Link-Link-9ZwDx" tabindex="0" aria-labelledby="_r_3_--label " id="_r_3_" data-size="medium" href="https://github.com/issues" data-testid="side-nav-menu-item-ISSUES" style="--subitem-depth: 0;"><span class="prc-ActionList-Spacer-4tR2m"></span><span class="prc-ActionList-LeadingVisual-NBr28 prc-ActionList-VisualWrap-bdCsS"><svg aria-hidden="true" focusable="false" class="octicon octicon-issue-opened" viewBox="0 0 16 16" width="16" height="16" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align: text-bottom;"><path d="M8 9.5a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Z"></path><path d="M8 0a8 8 0 1 1 0 16A8 8 0 0 1 8 0ZM1.5 8a6.5 6.5 0 1 0 13 0 6.5 6.5 0 0 0-13 0Z"></path></svg></span><span class="prc-ActionList-ActionListSubContent-gKsFp" data-component="ActionList.Item--DividerContainer"><span id="_r_3_--label" class="prc-ActionList-ItemLabel-81ohH">Issues</span></span></a></li><li data-has-description="false" class="prc-ActionList-ActionListItem-So4vC"><a class="prc-ActionList-ActionListContent-KBb8- prc-Link-Link-9ZwDx" tabindex="0" aria-labelledby="_r_4_--label " id="_r_4_" data-size="medium" href="https://github.com/pulls" data-testid="side-nav-menu-item-PULL_REQUESTS" style="--subitem-depth: 0;"><span class="prc-ActionList-Spacer-4tR2m"></span><span class="prc-ActionList-LeadingVisual-NBr28 prc-ActionList-VisualWrap-bdCsS"><svg aria-hidden="true" focusable="false" class="octicon octicon-git-pull-request" viewBox="0 0 16 16" width="16" height="16" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align: text-bottom;"><path d="M1.5 3.25a2.25 2.25 0 1 1 3 2.122v5.256a2.251 2.251 0 1 1-1.5 0V5.372A2.25 2.25 0 0 1 1.5 3.25Zm5.677-.177L9.573.677A.25.25 0 0 1 10 .854V2.5h1A2.5 2.5 0 0 1 13.5 5v5.628a2.251 2.251 0 1 1-1.5 0V5a1 1 0 0 0-1-1h-1v1.646a.25.25 0 0 1-.427.177L7.177 3.427a.25.25 0 0 1 0-.354ZM3.75 2.5a.75.75 0 1 0 0 1.5.75.75 0 0 0 0-1.5Zm0 9.5a.75.75 0 1 0 0 1.5.75.75 0 0 0 0-1.5Zm8.25.75a.75.75 0 1 0 1.5 0 .75.75 0 0 0-1.5 0Z"></path></svg></span><span class="prc-ActionList-ActionListSubContent-gKsFp" data-component="ActionList.Item--DividerContainer"><span id="_r_4_--label" class="prc-ActionList-ItemLabel-81ohH">Pull requests</span></span></a></li></div><a data-component="IconButton" type="button" data-hotkey="g d" hotkey="g d" class="prc-Button-ButtonBase-9n-Xk styles-module__appHeaderHome__nkA_U prc-Button-IconButton-fyge7" data-loading="false" data-no-visuals="true" data-size="medium" data-variant="invisible" aria-labelledby="_R_cpb_" href="https://github.com/" data-discover="true"><svg aria-hidden="true" focusable="false" class="octicon octicon-mark-github" viewBox="0 0 24 24" width="32" height="32" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="M12 1C5.923 1 1 5.923 1 12c0 4.867 3.149 8.979 7.521 10.436.55.096.756-.233.756-.522 0-.262-.013-1.128-.013-2.049-2.764.509-3.479-.674-3.699-1.292-.124-.317-.66-1.293-1.127-1.554-.385-.207-.936-.715-.014-.729.866-.014 1.485.797 1.691 1.128.99 1.663 2.571 1.196 3.204.907.096-.715.385-1.196.701-1.471-2.448-.275-5.005-1.224-5.005-5.432 0-1.196.426-2.186 1.128-2.956-.111-.275-.496-1.402.11-2.915 0 0 .921-.288 3.024 1.128a10.193 10.193 0 0 1 2.75-.371c.936 0 1.871.123 2.75.371 2.104-1.43 3.025-1.128 3.025-1.128.605 1.513.221 2.64.111 2.915.701.77 1.127 1.747 1.127 2.956 0 4.222-2.571 5.157-5.019 5.432.399.344.743 1.004.743 2.035 0 1.471-.014 2.654-.014 3.025 0 .289.206.632.756.522C19.851 20.979 23 16.854 23 12c0-6.077-4.922-11-11-11Z"></path></svg></a><span class="prc-TooltipV2-Tooltip-tLeuB" data-direction="s" aria-hidden="true" popover="auto"><span id="_R_cpb_">Homepage <span class="prc-src-InternalVisuallyHidden-2YaI6">(<!-- -->g then d<!-- -->)</span></span><span class="prc-TooltipV2-KeybindingHintContainer-Ymj-3 prc-TooltipV2-HasTextBefore-fdOXj" aria-hidden="true"><kbd class="prc-KeybindingHint-KeybindingHint-qpYIs prc-Text-Text-9mHv3" data-testid="keybinding-hint"><span class="prc-components-Chord-DdhWN prc-components-ChordOnEmphasis-O-4BS prc-components-ChordSmall-c-P-x prc-Text-Text-9mHv3" data-kbd-chord="true"> <span class="prc-src-InternalVisuallyHidden-2YaI6">g</span><span aria-hidden="true">G</span></span><span class="prc-src-InternalVisuallyHidden-2YaI6">then</span> <span class="prc-components-Chord-DdhWN prc-components-ChordOnEmphasis-O-4BS prc-components-ChordSmall-c-P-x prc-Text-Text-9mHv3" data-kbd-chord="true"> <span class="prc-src-InternalVisuallyHidden-2YaI6">d</span><span aria-hidden="true">D</span></span></kbd></span></span></div><div data-testid="top-nav-center" class="styles-module__center__R3QRv styles-module__withLocalNavigation__rjTJ_ prc-Stack-Stack-UQ9k6" data-gap="condensed" data-direction="horizontal" data-align="stretch" data-wrap="nowrap" data-justify="start" data-padding="normal"><nav class="styles-module__contextRegion__VbSp2 prc-Breadcrumbs-BreadcrumbsBase-3Gb-B" aria-label="Breadcrumbs" data-overflow="menu" data-variant="normal"><ol class="prc-Breadcrumbs-BreadcrumbsList-BKjpe"><li class="prc-Breadcrumbs-ItemWrapper-k0NLn"><a class="styles-module__contextCrumb__IzGIq prc-Breadcrumbs-Item-jcraJ" href="https://github.com/hyprwm"><span class="">hyprwm</span></a></li><li class="prc-Breadcrumbs-ItemWrapper-k0NLn"><a class="styles-module__contextCrumb__IzGIq prc-Breadcrumbs-Item-jcraJ" href="https://github.com/hyprwm/Hyprland"><span class="styles-module__contextCrumbLast__tI2e3">Hyprland</span></a></li></ol></nav><div class="Search-module__searchButtonGroup__aetw5 prc-ButtonGroup-ButtonGroup-vFUrY"><div><button type="button" aria-label="Search or jump to…" class="prc-Button-ButtonBase-9n-Xk styles-module__appHeaderButton__axedQ Search-module__searchButton__aiE0a" data-loading="false" data-size="medium" data-variant="invisible"><span data-component="buttonContent" data-align="center" class="prc-Button-ButtonContent-Iohp5"><span data-component="leadingVisual" class="prc-Button-Visual-YNt2F prc-Button-VisualWrap-E4cnq"><svg aria-hidden="true" focusable="false" class="octicon octicon-search" viewBox="0 0 16 16" width="16" height="16" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="M10.68 11.74a6 6 0 0 1-7.922-8.982 6 6 0 0 1 8.982 7.922l3.04 3.04a.749.749 0 0 1-.326 1.275.749.749 0 0 1-.734-.215ZM11.5 7a4.499 4.499 0 1 0-8.997 0A4.499 4.499 0 0 0 11.5 7Z"></path></svg></span><span data-component="text" class="prc-Button-Label-FWkx3"><span class="Search-module__placeholder__p9hbG Search-module__text__veSYi Search-module__value__TFoak">Type<!-- --> <kbd class="Search-module__kbd__WCskr">/</kbd> <!-- -->to search</span></span></span></button></div><div></div></div><button data-component="IconButton" type="button" data-hotkey="s,/" class="prc-Button-ButtonBase-9n-Xk styles-module__appHeaderButton__axedQ Search-module__smallSearchButton___8Gvn prc-Button-IconButton-fyge7" data-loading="false" data-no-visuals="true" data-size="medium" data-variant="invisible" aria-labelledby="_R_2l9b_"><svg aria-hidden="true" focusable="false" class="octicon octicon-search" viewBox="0 0 16 16" width="16" height="16" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="M10.68 11.74a6 6 0 0 1-7.922-8.982 6 6 0 0 1 8.982 7.922l3.04 3.04a.749.749 0 0 1-.326 1.275.749.749 0 0 1-.734-.215ZM11.5 7a4.499 4.499 0 1 0-8.997 0A4.499 4.499 0 0 0 11.5 7Z"></path></svg></button><span class="prc-TooltipV2-Tooltip-tLeuB" data-direction="s" aria-hidden="true" popover="auto"><span id="_R_2l9b_">Search or jump to…<span class="prc-src-InternalVisuallyHidden-2YaI6">(<!-- -->s,/<!-- -->)</span></span><span class="prc-TooltipV2-KeybindingHintContainer-Ymj-3 prc-TooltipV2-HasTextBefore-fdOXj" aria-hidden="true"><kbd class="prc-KeybindingHint-KeybindingHint-qpYIs prc-Text-Text-9mHv3" data-testid="keybinding-hint"><span class="prc-components-Chord-DdhWN prc-components-ChordOnEmphasis-O-4BS prc-components-ChordSmall-c-P-x prc-Text-Text-9mHv3" data-kbd-chord="true"> <span class="prc-src-InternalVisuallyHidden-2YaI6">s,/</span><span aria-hidden="true">S,/</span></span></kbd></span></span><div class="d-none"><qbsearch-input class="search-input" data-scope="repo:hyprwm/Hyprland" data-custom-scopes-path="/search/custom_scopes" data-delete-custom-scopes-csrf="3sOpYQMYYFn78JaSJil_3YGW_If31lb7NQ1JifFgR0WUyqJBnGgzEAxdnJs7m3C9o_bCMSy33x6OdRU4Vjqt8w" data-max-custom-scopes="10" data-header-redesign-enabled="true" data-initial-value="" data-blackbird-suggestions-path="/search/suggestions" data-jump-to-suggestions-path="/_graphql/GetSuggestedNavigationDestinations" data-current-repository="hyprwm/Hyprland" data-current-org="hyprwm" data-current-owner="" data-logged-in="true" data-copilot-chat-enabled="true" data-nl-search-enabled="false" data-catalyst="">
+ <div class="search-input-container search-with-dialog position-relative d-flex flex-row flex-items-center height-auto color-bg-transparent border-0 color-fg-subtle mx-0" data-action="click:qbsearch-input#searchInputContainerClicked">
+
+ <input type="hidden" name="type" class="js-site-search-type-field">
+
+
+<div class="Overlay--hidden " data-modal-dialog-overlay="">
+ <modal-dialog data-action="close:qbsearch-input#handleClose cancel:qbsearch-input#handleClose" data-target="qbsearch-input.searchSuggestionsDialog" role="dialog" id="search-suggestions-dialog" aria-modal="true" aria-labelledby="search-suggestions-dialog-header" data-view-component="true" class="Overlay Overlay--width-medium Overlay--height-auto">
+ <h1 id="search-suggestions-dialog-header" class="sr-only">Search code, repositories, users, issues, pull requests...</h1>
+ <div class="Overlay-body Overlay-body--paddingNone">
+
+ <div data-view-component="true"> <div class="search-suggestions position-absolute width-full color-shadow-large border color-fg-default color-bg-default overflow-hidden d-flex flex-column query-builder-container" style="border-radius: 12px;" data-target="qbsearch-input.queryBuilderContainer" hidden="">
+ <!-- '"` --><!-- </textarea></xmp> --><form id="query-builder-test-form" action="https://github.com/hyprwm/Hyprland/releases/tag/v0.54.0" accept-charset="UTF-8" method="get">
+ <query-builder data-target="qbsearch-input.queryBuilder" id="query-builder-query-builder-test" data-filter-key=":" data-view-component="true" class="QueryBuilder search-query-builder" data-min-width="300" data-catalyst="">
+ <div class="FormControl FormControl--fullWidth">
+ <label id="query-builder-test-label" for="query-builder-test" class="FormControl-label sr-only">
+ Search
+ </label>
+ <div class="QueryBuilder-StyledInput width-fit " data-target="query-builder.styledInput">
+ <span id="query-builder-test-leadingvisual-wrap" class="FormControl-input-leadingVisualWrap QueryBuilder-leadingVisualWrap">
+ <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-search FormControl-input-leadingVisual">
+ <path d="M10.68 11.74a6 6 0 0 1-7.922-8.982 6 6 0 0 1 8.982 7.922l3.04 3.04a.749.749 0 0 1-.326 1.275.749.749 0 0 1-.734-.215ZM11.5 7a4.499 4.499 0 1 0-8.997 0A4.499 4.499 0 0 0 11.5 7Z"></path>
+</svg>
+ </span>
+ <div data-target="query-builder.styledInputContainer" class="QueryBuilder-StyledInputContainer">
+ <div aria-hidden="true" class="QueryBuilder-StyledInputContent" data-target="query-builder.styledInputContent"></div>
+ <div class="QueryBuilder-InputWrapper">
+ <div aria-hidden="true" class="QueryBuilder-Sizer" data-target="query-builder.sizer"><span></span></div>
+ <input id="query-builder-test" name="query-builder-test" value="" autocomplete="off" type="text" role="combobox" spellcheck="false" aria-expanded="false" aria-describedby="validation-b3d31d17-85cb-4ed1-aa52-8b95fd4ec21d" data-target="query-builder.input" data-action="
+ input:query-builder#inputChange
+ blur:query-builder#inputBlur
+ keydown:query-builder#inputKeydown
+ focus:query-builder#inputFocus
+ " data-view-component="true" class="FormControl-input QueryBuilder-Input FormControl-medium" aria-controls="query-builder-test-results" aria-autocomplete="list" aria-haspopup="listbox" style="width: 300px;">
+ </div>
+ </div>
+ <span data-target="query-builder.clearButton" hidden="">
+ <span class="sr-only" id="query-builder-test-clear">Clear</span>
+ <button role="button" id="query-builder-test-clear-button" aria-labelledby="query-builder-test-clear query-builder-test-label" data-action="
+ click:query-builder#clear
+ focus:query-builder#clearButtonFocus
+ blur:query-builder#clearButtonBlur
+ " variant="small" type="button" data-view-component="true" class="Button Button--iconOnly Button--invisible Button--medium mr-1 px-2 py-0 d-flex flex-items-center rounded-1 color-fg-muted"> <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-x-circle-fill Button-visual">
+ <path d="M2.343 13.657A8 8 0 1 1 13.658 2.343 8 8 0 0 1 2.343 13.657ZM6.03 4.97a.751.751 0 0 0-1.042.018.751.751 0 0 0-.018 1.042L6.94 8 4.97 9.97a.749.749 0 0 0 .326 1.275.749.749 0 0 0 .734-.215L8 9.06l1.97 1.97a.749.749 0 0 0 1.275-.326.749.749 0 0 0-.215-.734L9.06 8l1.97-1.97a.749.749 0 0 0-.326-1.275.749.749 0 0 0-.734.215L8 6.94Z"></path>
+</svg>
+</button>
+
+ </span>
+ </div>
+ <template id="search-icon"></template>
+
+<template id="code-icon"></template>
+
+<template id="file-code-icon"></template>
+
+<template id="history-icon"></template>
+
+<template id="repo-icon"></template>
+
+<template id="bookmark-icon"></template>
+
+<template id="plus-circle-icon"></template>
+
+<template id="circle-icon"></template>
+
+<template id="trash-icon"></template>
+
+<template id="team-icon"></template>
+
+<template id="project-icon"></template>
+
+<template id="pencil-icon"></template>
+
+<template id="copilot-icon"></template>
+
+<template id="copilot-error-icon"></template>
+
+<template id="workflow-icon"></template>
+
+<template id="book-icon"></template>
+
+<template id="code-review-icon"></template>
+
+<template id="codespaces-icon"></template>
+
+<template id="comment-icon"></template>
+
+<template id="comment-discussion-icon"></template>
+
+<template id="organization-icon"></template>
+
+<template id="rocket-icon"></template>
+
+<template id="shield-check-icon"></template>
+
+<template id="heart-icon"></template>
+
+<template id="server-icon"></template>
+
+<template id="globe-icon"></template>
+
+<template id="issue-opened-icon"></template>
+
+<template id="device-mobile-icon"></template>
+
+<template id="package-icon"></template>
+
+<template id="credit-card-icon"></template>
+
+<template id="play-icon"></template>
+
+<template id="gift-icon"></template>
+
+<template id="code-square-icon"></template>
+
+<template id="device-desktop-icon"></template>
+
+ <div class="position-relative">
+ <ul role="listbox" class="ActionListWrap QueryBuilder-ListWrap" aria-label="Suggestions" data-action="
+ combobox-commit:query-builder#comboboxCommit
+ mousedown:query-builder#resultsMousedown
+ " data-target="query-builder.resultsList" data-persist-list="false" id="query-builder-test-results" tabindex="-1"></ul>
+
+ </div>
+ <div class="FormControl-inlineValidation" id="validation-b3d31d17-85cb-4ed1-aa52-8b95fd4ec21d" hidden="hidden">
+ <span class="FormControl-inlineValidation--visual">
+ <svg aria-hidden="true" height="12" viewBox="0 0 12 12" version="1.1" width="12" data-view-component="true" class="octicon octicon-alert-fill">
+ <path d="M4.855.708c.5-.896 1.79-.896 2.29 0l4.675 8.351a1.312 1.312 0 0 1-1.146 1.954H1.33A1.313 1.313 0 0 1 .183 9.058ZM7 7V3H5v4Zm-1 3a1 1 0 1 0 0-2 1 1 0 0 0 0 2Z"></path>
+</svg>
+ </span>
+ <span></span>
+</div> </div>
+ <div data-target="query-builder.screenReaderFeedback" aria-live="polite" aria-atomic="true" class="sr-only">0 suggestions.</div>
+</query-builder></form>
+ <div class="d-flex flex-row color-fg-muted tmp-px-3 text-small color-bg-default search-feedback-prompt">
+ <a target="_blank" href="https://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax" data-view-component="true" class="Link color-fg-accent text-normal ml-2">Search syntax tips</a> <div class="d-flex flex-1"></div>
+ <button data-action="click:qbsearch-input#showFeedbackDialog" type="button" data-view-component="true" class="Button--link Button--medium Button color-fg-accent text-normal ml-2"> <span class="Button-content">
+ <span class="Button-label">Give feedback</span>
+ </span>
+</button>
+ </div>
+ </div>
+</div>
+
+ </div>
+</modal-dialog></div>
+ </div>
+ <div data-action="click:qbsearch-input#retract" class="dark-backdrop position-fixed" hidden="" data-target="qbsearch-input.darkBackdrop"></div>
+ <div class="color-fg-default">
+
+<dialog-helper>
+ <dialog data-target="qbsearch-input.feedbackDialog" data-action="close:qbsearch-input#handleDialogClose cancel:qbsearch-input#handleDialogClose" id="feedback-dialog" aria-modal="true" aria-labelledby="feedback-dialog-title" aria-describedby="feedback-dialog-description" data-view-component="true" class="Overlay Overlay-whenNarrow Overlay--size-medium Overlay--motion-scaleFade Overlay--disableScroll">
+ <div data-view-component="true" class="Overlay-header">
+ <div class="Overlay-headerContentWrap">
+ <div class="Overlay-titleWrap">
+ <h1 class="Overlay-title " id="feedback-dialog-title">
+ Provide feedback
+ </h1>
+
+ </div>
+ <div class="Overlay-actionWrap">
+ <button data-close-dialog-id="feedback-dialog" aria-label="Close" type="button" data-view-component="true" class="close-button Overlay-closeButton"><svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-x">
+ <path d="M3.72 3.72a.75.75 0 0 1 1.06 0L8 6.94l3.22-3.22a.749.749 0 0 1 1.275.326.749.749 0 0 1-.215.734L9.06 8l3.22 3.22a.749.749 0 0 1-.326 1.275.749.749 0 0 1-.734-.215L8 9.06l-3.22 3.22a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042L6.94 8 3.72 4.78a.75.75 0 0 1 0-1.06Z"></path>
+</svg></button>
+ </div>
+ </div>
+
+</div>
+ <scrollable-region data-labelled-by="feedback-dialog-title" data-catalyst="" style="overflow: auto;">
+ <div data-view-component="true" class="Overlay-body"> <!-- '"` --><!-- </textarea></xmp> --><form id="code-search-feedback-form" data-turbo="false" action="https://github.com/search/feedback" accept-charset="UTF-8" method="post"><input type="hidden" name="authenticity_token" value="amAb3AqsxQ1YZQ_D8Trmgpv64YSKFfQ2eqBnBXLlcAsw6081iHw6xI6YCYl0CxfNh7QRepvykrVPwt6628Y3nA">
+ <p>We read every piece of feedback, and take your input very seriously.</p>
+ <textarea name="feedback" class="form-control width-full mb-2" style="height: 120px" id="feedback"></textarea>
+ <input name="include_email" id="include_email" aria-label="Include my email address so I can be contacted" class="form-control mr-2" type="checkbox">
+ <label for="include_email" style="font-weight: normal">Include my email address so I can be contacted</label>
+</form></div>
+ </scrollable-region>
+ <div data-view-component="true" class="Overlay-footer Overlay-footer--alignEnd"> <button data-close-dialog-id="feedback-dialog" type="button" data-view-component="true" class="btn"> Cancel
+</button>
+ <button form="code-search-feedback-form" data-action="click:qbsearch-input#submitFeedback" type="submit" data-view-component="true" class="btn-primary btn"> Submit feedback
+</button>
+</div>
+</dialog></dialog-helper>
+
+ <custom-scopes data-target="qbsearch-input.customScopesManager" data-catalyst="">
+
+<dialog-helper>
+ <dialog data-target="custom-scopes.customScopesModalDialog" data-action="close:qbsearch-input#handleDialogClose cancel:qbsearch-input#handleDialogClose" id="custom-scopes-dialog" aria-modal="true" aria-labelledby="custom-scopes-dialog-title" aria-describedby="custom-scopes-dialog-description" data-view-component="true" class="Overlay Overlay-whenNarrow Overlay--size-medium Overlay--motion-scaleFade Overlay--disableScroll">
+ <div data-view-component="true" class="Overlay-header Overlay-header--divided">
+ <div class="Overlay-headerContentWrap">
+ <div class="Overlay-titleWrap">
+ <h1 class="Overlay-title " id="custom-scopes-dialog-title">
+ Saved searches
+ </h1>
+ <h2 id="custom-scopes-dialog-description" class="Overlay-description">Use saved searches to filter your results more quickly</h2>
+ </div>
+ <div class="Overlay-actionWrap">
+ <button data-close-dialog-id="custom-scopes-dialog" aria-label="Close" type="button" data-view-component="true" class="close-button Overlay-closeButton"><svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-x">
+ <path d="M3.72 3.72a.75.75 0 0 1 1.06 0L8 6.94l3.22-3.22a.749.749 0 0 1 1.275.326.749.749 0 0 1-.215.734L9.06 8l3.22 3.22a.749.749 0 0 1-.326 1.275.749.749 0 0 1-.734-.215L8 9.06l-3.22 3.22a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042L6.94 8 3.72 4.78a.75.75 0 0 1 0-1.06Z"></path>
+</svg></button>
+ </div>
+ </div>
+
+</div>
+ <scrollable-region data-labelled-by="custom-scopes-dialog-title" data-catalyst="" style="overflow: auto;">
+ <div data-view-component="true" class="Overlay-body"> <div data-target="custom-scopes.customScopesModalDialogFlash"></div>
+
+ <div hidden="" class="create-custom-scope-form" data-target="custom-scopes.createCustomScopeForm">
+ <!-- '"` --><!-- </textarea></xmp> --><form id="custom-scopes-dialog-form" data-turbo="false" action="https://github.com/search/custom_scopes" accept-charset="UTF-8" method="post"><input type="hidden" name="authenticity_token" value="LsoGliUqHYaB3GqcITN_2GVIRi_NhsM8HBfBI-Muv4RMr2ia9p9vqHgOzqo3AkHsygNWNY76xjkW5yykc3G9rg">
+ <div data-target="custom-scopes.customScopesModalDialogFlash"></div>
+
+ <input type="hidden" id="custom_scope_id" name="custom_scope_id" data-target="custom-scopes.customScopesIdField">
+
+ <div class="form-group">
+ <label for="custom_scope_name">Name</label>
+ <auto-check src="/search/custom_scopes/check_name" required="">
+ <input type="text" name="custom_scope_name" id="custom_scope_name" data-target="custom-scopes.customScopesNameField" class="form-control" autocomplete="off" placeholder="github-ruby" required="" maxlength="50" spellcheck="false">
+ <input type="hidden" value="gOZ4QxM1JheNB9xNoTSuBZ53K0mGmmRAthxxwon3Hp6BlfsSlobE6-rCzjUi2UtrojfVKQqT9LEj2aOo7DR1MQ" data-csrf="true">
+ </auto-check>
+ </div>
+
+ <div class="form-group">
+ <label for="custom_scope_query">Query</label>
+ <input type="text" name="custom_scope_query" id="custom_scope_query" data-target="custom-scopes.customScopesQueryField" class="form-control" autocomplete="off" placeholder="(repo:mona/a OR repo:mona/b) AND lang:python" required="" maxlength="500">
+ </div>
+
+ <p class="text-small color-fg-muted">
+ To see all available qualifiers, see our <a class="Link--inTextBlock" href="https://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax">documentation</a>.
+ </p>
+</form> </div>
+
+ <div data-target="custom-scopes.manageCustomScopesForm">
+ <div data-target="custom-scopes.list"></div>
+ </div>
+
+</div>
+ </scrollable-region>
+ <div data-view-component="true" class="Overlay-footer Overlay-footer--alignEnd Overlay-footer--divided"> <button data-action="click:custom-scopes#customScopesCancel" type="button" data-view-component="true" class="btn"> Cancel
+</button>
+ <button form="custom-scopes-dialog-form" data-action="click:custom-scopes#customScopesSubmit" data-target="custom-scopes.customScopesSubmitButton" type="submit" data-view-component="true" class="btn-primary btn"> Create saved search
+</button>
+</div>
+</dialog></dialog-helper>
+ </custom-scopes>
+ </div>
+</qbsearch-input><input type="hidden" value="RhJ5eCbpGq2IpxoQGH1TXxeXWgkemycuSZzzjH1I6sfM_rA6ht3TUGeKDS_QYeTKJPSt6ni8Hd_bGYbxDRJQEQ" data-csrf="true" class="js-data-jump-to-suggestions-path-csrf"></div></div><div data-testid="top-nav-right" class="styles-module__right__mlBQg styles-module__withLocalNavigation__rjTJ_ prc-Stack-Stack-UQ9k6" data-gap="condensed" data-direction="horizontal" data-align="center" data-wrap="nowrap" data-justify="start" data-padding="normal"><div data-testid="top-bar-actions" class="hide-sm hide-md prc-Stack-Stack-UQ9k6" data-gap="condensed" data-direction="horizontal" data-align="center" data-wrap="nowrap" data-justify="start" data-padding="none"><span><div class="prc-ButtonGroup-ButtonGroup-vFUrY"><div><a data-component="IconButton" type="button" class="prc-Button-ButtonBase-9n-Xk styles-module__appHeaderButton__axedQ prc-Button-IconButton-fyge7" data-loading="false" data-no-visuals="true" data-size="medium" data-variant="invisible" aria-labelledby="_R_2kjpb_" href="https://github.com/copilot" data-discover="true"><svg aria-hidden="true" focusable="false" class="octicon octicon-copilot" viewBox="0 0 16 16" width="16" height="16" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="M7.998 15.035c-4.562 0-7.873-2.914-7.998-3.749V9.338c.085-.628.677-1.686 1.588-2.065.013-.07.024-.143.036-.218.029-.183.06-.384.126-.612-.201-.508-.254-1.084-.254-1.656 0-.87.128-1.769.693-2.484.579-.733 1.494-1.124 2.724-1.261 1.206-.134 2.262.034 2.944.765.05.053.096.108.139.165.044-.057.094-.112.143-.165.682-.731 1.738-.899 2.944-.765 1.23.137 2.145.528 2.724 1.261.566.715.693 1.614.693 2.484 0 .572-.053 1.148-.254 1.656.066.228.098.429.126.612.012.076.024.148.037.218.924.385 1.522 1.471 1.591 2.095v1.872c0 .766-3.351 3.795-8.002 3.795Zm0-1.485c2.28 0 4.584-1.11 5.002-1.433V7.862l-.023-.116c-.49.21-1.075.291-1.727.291-1.146 0-2.059-.327-2.71-.991A3.222 3.222 0 0 1 8 6.303a3.24 3.24 0 0 1-.544.743c-.65.664-1.563.991-2.71.991-.652 0-1.236-.081-1.727-.291l-.023.116v4.255c.419.323 2.722 1.433 5.002 1.433ZM6.762 2.83c-.193-.206-.637-.413-1.682-.297-1.019.113-1.479.404-1.713.7-.247.312-.369.789-.369 1.554 0 .793.129 1.171.308 1.371.162.181.519.379 1.442.379.853 0 1.339-.235 1.638-.54.315-.322.527-.827.617-1.553.117-.935-.037-1.395-.241-1.614Zm4.155-.297c-1.044-.116-1.488.091-1.681.297-.204.219-.359.679-.242 1.614.091.726.303 1.231.618 1.553.299.305.784.54 1.638.54.922 0 1.28-.198 1.442-.379.179-.2.308-.578.308-1.371 0-.765-.123-1.242-.37-1.554-.233-.296-.693-.587-1.713-.7Z"></path><path d="M6.25 9.037a.75.75 0 0 1 .75.75v1.501a.75.75 0 0 1-1.5 0V9.787a.75.75 0 0 1 .75-.75Zm4.25.75v1.501a.75.75 0 0 1-1.5 0V9.787a.75.75 0 0 1 1.5 0Z"></path></svg></a><span class="prc-TooltipV2-Tooltip-tLeuB" data-direction="s" aria-hidden="true" id="_R_2kjpb_" popover="auto">Chat with Copilot</span></div><div><div class="d-none"></div><button type="button" aria-label="Open Copilot…" aria-haspopup="true" aria-expanded="false" tabindex="0" class="prc-Button-ButtonBase-9n-Xk styles-module__appHeaderButton__axedQ CopilotItems-module__CopilotMenu__DVdfE" data-loading="false" data-size="medium" data-variant="invisible" id="_R_54jpb_"><span data-component="buttonContent" data-align="center" class="prc-Button-ButtonContent-Iohp5"><span data-component="leadingVisual" class="prc-Button-Visual-YNt2F prc-Button-VisualWrap-E4cnq"><svg aria-hidden="true" focusable="false" class="octicon octicon-copilot" viewBox="0 0 16 16" width="16" height="16" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="M7.998 15.035c-4.562 0-7.873-2.914-7.998-3.749V9.338c.085-.628.677-1.686 1.588-2.065.013-.07.024-.143.036-.218.029-.183.06-.384.126-.612-.201-.508-.254-1.084-.254-1.656 0-.87.128-1.769.693-2.484.579-.733 1.494-1.124 2.724-1.261 1.206-.134 2.262.034 2.944.765.05.053.096.108.139.165.044-.057.094-.112.143-.165.682-.731 1.738-.899 2.944-.765 1.23.137 2.145.528 2.724 1.261.566.715.693 1.614.693 2.484 0 .572-.053 1.148-.254 1.656.066.228.098.429.126.612.012.076.024.148.037.218.924.385 1.522 1.471 1.591 2.095v1.872c0 .766-3.351 3.795-8.002 3.795Zm0-1.485c2.28 0 4.584-1.11 5.002-1.433V7.862l-.023-.116c-.49.21-1.075.291-1.727.291-1.146 0-2.059-.327-2.71-.991A3.222 3.222 0 0 1 8 6.303a3.24 3.24 0 0 1-.544.743c-.65.664-1.563.991-2.71.991-.652 0-1.236-.081-1.727-.291l-.023.116v4.255c.419.323 2.722 1.433 5.002 1.433ZM6.762 2.83c-.193-.206-.637-.413-1.682-.297-1.019.113-1.479.404-1.713.7-.247.312-.369.789-.369 1.554 0 .793.129 1.171.308 1.371.162.181.519.379 1.442.379.853 0 1.339-.235 1.638-.54.315-.322.527-.827.617-1.553.117-.935-.037-1.395-.241-1.614Zm4.155-.297c-1.044-.116-1.488.091-1.681.297-.204.219-.359.679-.242 1.614.091.726.303 1.231.618 1.553.299.305.784.54 1.638.54.922 0 1.28-.198 1.442-.379.179-.2.308-.578.308-1.371 0-.765-.123-1.242-.37-1.554-.233-.296-.693-.587-1.713-.7Z"></path><path d="M6.25 9.037a.75.75 0 0 1 .75.75v1.501a.75.75 0 0 1-1.5 0V9.787a.75.75 0 0 1 .75-.75Zm4.25.75v1.501a.75.75 0 0 1-1.5 0V9.787a.75.75 0 0 1 1.5 0Z"></path></svg></span></span><span data-component="trailingAction" class="prc-Button-Visual-YNt2F prc-Button-VisualWrap-E4cnq"><svg aria-hidden="true" focusable="false" class="octicon octicon-triangle-down" viewBox="0 0 16 16" width="16" height="16" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="m4.427 7.427 3.396 3.396a.25.25 0 0 0 .354 0l3.396-3.396A.25.25 0 0 0 11.396 7H4.604a.25.25 0 0 0-.177.427Z"></path></svg></span></button></div></div><div class="CopilotImmersiveEmbedded-module__CopilotChatContainer__Hqz45" data-testid="copilot-immersive-embedded-header-button"></div></span><div class="styles-module__itemDivider__nunbs"></div><button type="button" aria-haspopup="true" aria-expanded="false" tabindex="0" class="prc-Button-ButtonBase-9n-Xk GlobalCreateMenu-module__actionMenuButton__Hj_iB" data-loading="false" data-size="medium" data-variant="invisible" aria-labelledby="global-create-menu-tooltip-_R_1jpb_" id="_R_5jpb_"><span data-component="buttonContent" data-align="center" class="prc-Button-ButtonContent-Iohp5"><span data-component="leadingVisual" class="prc-Button-Visual-YNt2F prc-Button-VisualWrap-E4cnq"><svg aria-hidden="true" focusable="false" class="octicon octicon-plus" viewBox="0 0 16 16" width="16" height="16" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="M7.75 2a.75.75 0 0 1 .75.75V7h4.25a.75.75 0 0 1 0 1.5H8.5v4.25a.75.75 0 0 1-1.5 0V8.5H2.75a.75.75 0 0 1 0-1.5H7V2.75A.75.75 0 0 1 7.75 2Z"></path></svg></span></span><span data-component="trailingAction" class="prc-Button-Visual-YNt2F prc-Button-VisualWrap-E4cnq"><svg aria-hidden="true" focusable="false" class="octicon octicon-triangle-down" viewBox="0 0 16 16" width="16" height="16" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="m4.427 7.427 3.396 3.396a.25.25 0 0 0 .354 0l3.396-3.396A.25.25 0 0 0 11.396 7H4.604a.25.25 0 0 0-.177.427Z"></path></svg></span></button><span class="prc-TooltipV2-Tooltip-tLeuB" data-direction="s" aria-hidden="true" id="global-create-menu-tooltip-_R_1jpb_" popover="auto">Create new...</span><a data-component="IconButton" type="button" class="prc-Button-ButtonBase-9n-Xk styles-module__appHeaderButton__axedQ prc-Button-IconButton-fyge7" data-loading="false" data-no-visuals="true" data-size="medium" data-variant="invisible" aria-labelledby="_R_m3pb_" href="https://github.com/issues" data-discover="true"><svg aria-hidden="true" focusable="false" class="octicon octicon-issue-opened" viewBox="0 0 16 16" width="16" height="16" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="M8 9.5a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Z"></path><path d="M8 0a8 8 0 1 1 0 16A8 8 0 0 1 8 0ZM1.5 8a6.5 6.5 0 1 0 13 0 6.5 6.5 0 0 0-13 0Z"></path></svg></a><span class="prc-TooltipV2-Tooltip-tLeuB" data-direction="s" aria-hidden="true" id="_R_m3pb_" popover="auto">Issues</span><a data-component="IconButton" type="button" class="prc-Button-ButtonBase-9n-Xk styles-module__appHeaderButton__axedQ prc-Button-IconButton-fyge7" data-loading="false" data-no-visuals="true" data-size="medium" data-variant="invisible" aria-labelledby="_R_q3pb_" href="https://github.com/pulls" data-discover="true"><svg aria-hidden="true" focusable="false" class="octicon octicon-git-pull-request" viewBox="0 0 16 16" width="16" height="16" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="M1.5 3.25a2.25 2.25 0 1 1 3 2.122v5.256a2.251 2.251 0 1 1-1.5 0V5.372A2.25 2.25 0 0 1 1.5 3.25Zm5.677-.177L9.573.677A.25.25 0 0 1 10 .854V2.5h1A2.5 2.5 0 0 1 13.5 5v5.628a2.251 2.251 0 1 1-1.5 0V5a1 1 0 0 0-1-1h-1v1.646a.25.25 0 0 1-.427.177L7.177 3.427a.25.25 0 0 1 0-.354ZM3.75 2.5a.75.75 0 1 0 0 1.5.75.75 0 0 0 0-1.5Zm0 9.5a.75.75 0 1 0 0 1.5.75.75 0 0 0 0-1.5Zm8.25.75a.75.75 0 1 0 1.5 0 .75.75 0 0 0-1.5 0Z"></path></svg></a><span class="prc-TooltipV2-Tooltip-tLeuB" data-direction="s" aria-hidden="true" id="_R_q3pb_" popover="auto">Pull requests</span><a data-component="IconButton" type="button" class="prc-Button-ButtonBase-9n-Xk styles-module__appHeaderButton__axedQ prc-Button-IconButton-fyge7" data-loading="false" data-no-visuals="true" data-size="medium" data-variant="invisible" aria-labelledby="_R_u3pb_" href="https://github.com/repos" data-discover="true"><svg aria-hidden="true" focusable="false" class="octicon octicon-repo" viewBox="0 0 16 16" width="16" height="16" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="M2 2.5A2.5 2.5 0 0 1 4.5 0h8.75a.75.75 0 0 1 .75.75v12.5a.75.75 0 0 1-.75.75h-2.5a.75.75 0 0 1 0-1.5h1.75v-2h-8a1 1 0 0 0-.714 1.7.75.75 0 1 1-1.072 1.05A2.495 2.495 0 0 1 2 11.5Zm10.5-1h-8a1 1 0 0 0-1 1v6.708A2.486 2.486 0 0 1 4.5 9h8ZM5 12.25a.25.25 0 0 1 .25-.25h3.5a.25.25 0 0 1 .25.25v3.25a.25.25 0 0 1-.4.2l-1.45-1.087a.249.249 0 0 0-.3 0L5.4 15.7a.25.25 0 0 1-.4-.2Z"></path></svg></a><span class="prc-TooltipV2-Tooltip-tLeuB" data-direction="s" aria-hidden="true" id="_R_u3pb_" popover="auto">Repositories</span></div><a data-component="IconButton" type="button" data-hotkey="g n" class="prc-Button-ButtonBase-9n-Xk styles-module__appHeaderButton__axedQ styles-module__notificationIndicator__D_jL0 prc-Button-IconButton-fyge7" data-loading="false" data-no-visuals="true" data-size="medium" data-variant="invisible" aria-labelledby="_R_lpb_" href="https://github.com/notifications" data-discover="true"><svg aria-hidden="true" focusable="false" class="octicon octicon-inbox" viewBox="0 0 16 16" width="16" height="16" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="M2.8 2.06A1.75 1.75 0 0 1 4.41 1h7.18c.7 0 1.333.417 1.61 1.06l2.74 6.395c.04.093.06.194.06.295v4.5A1.75 1.75 0 0 1 14.25 15H1.75A1.75 1.75 0 0 1 0 13.25v-4.5c0-.101.02-.202.06-.295Zm1.61.44a.25.25 0 0 0-.23.152L1.887 8H4.75a.75.75 0 0 1 .6.3L6.625 10h2.75l1.275-1.7a.75.75 0 0 1 .6-.3h2.863L11.82 2.652a.25.25 0 0 0-.23-.152Zm10.09 7h-2.875l-1.275 1.7a.75.75 0 0 1-.6.3h-3.5a.75.75 0 0 1-.6-.3L4.375 9.5H1.5v3.75c0 .138.112.25.25.25h12.5a.25.25 0 0 0 .25-.25Z"></path></svg></a><span class="prc-TooltipV2-Tooltip-tLeuB" data-direction="s" aria-hidden="true" popover="auto"><span id="_R_lpb_">You have unread notifications<span class="prc-src-InternalVisuallyHidden-2YaI6">(<!-- -->g then n<!-- -->)</span></span><span class="prc-TooltipV2-KeybindingHintContainer-Ymj-3 prc-TooltipV2-HasTextBefore-fdOXj" aria-hidden="true"><kbd class="prc-KeybindingHint-KeybindingHint-qpYIs prc-Text-Text-9mHv3" data-testid="keybinding-hint"><span class="prc-components-Chord-DdhWN prc-components-ChordOnEmphasis-O-4BS prc-components-ChordSmall-c-P-x prc-Text-Text-9mHv3" data-kbd-chord="true"> <span class="prc-src-InternalVisuallyHidden-2YaI6">g</span><span aria-hidden="true">G</span></span><span class="prc-src-InternalVisuallyHidden-2YaI6">then</span> <span class="prc-components-Chord-DdhWN prc-components-ChordOnEmphasis-O-4BS prc-components-ChordSmall-c-P-x prc-Text-Text-9mHv3" data-kbd-chord="true"> <span class="prc-src-InternalVisuallyHidden-2YaI6">n</span><span aria-hidden="true">N</span></span></kbd></span></span><div class="GlobalNavUserMenu-module__container__NaVIt"><button data-component="IconButton" type="button" aria-haspopup="menu" data-login="cjennings" class="prc-Button-ButtonBase-9n-Xk GlobalNavUserMenu-module__anchor__Dcej6 prc-Button-IconButton-fyge7" data-loading="false" data-no-visuals="true" data-size="medium" data-variant="invisible" aria-labelledby="_R_2npb_"><img data-component="Avatar" class="Box-sc-62in7e-0 lpqgUB prc-Avatar-Avatar-0xaUi" alt="Craig Jennings" width="32" height="32" style="--avatarSize-regular:32px" src="./Release v0.54.0 · hyprwm_Hyprland_files/478233" data-testid="github-avatar"></button><span class="prc-TooltipV2-Tooltip-tLeuB" data-direction="s" aria-hidden="true" id="_R_2npb_" popover="auto">Open user navigation menu</span></div></div></div><h2 class="prc-src-InternalVisuallyHidden-2YaI6">Repository navigation</h2><nav class="prc-components-UnderlineWrapper-eT-Yj LocalNavigation-module__LocalNavigation__b0Xc0" aria-label="Repository" data-variant="inset" data-overflow-measured="true"><ul class="prc-components-UnderlineItemList-xKlKC" role="list"><li class="prc-UnderlineNav-UnderlineNavItem-syRjR"><a href="https://github.com/hyprwm/Hyprland" aria-current="page" data-hotkey="g c" data-tab-item="code" data-react-nav="code-view" data-react-nav-anchor="code-view-repo-link" data-turbo-frame="repo-content-turbo-frame" class="prc-components-UnderlineItem-7fP-n" data-discover="true"><span data-component="icon"><svg aria-hidden="true" focusable="false" class="octicon octicon-code" viewBox="0 0 16 16" width="16" height="16" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="m11.28 3.22 4.25 4.25a.75.75 0 0 1 0 1.06l-4.25 4.25a.749.749 0 0 1-1.275-.326.749.749 0 0 1 .215-.734L13.94 8l-3.72-3.72a.749.749 0 0 1 .326-1.275.749.749 0 0 1 .734.215Zm-6.56 0a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042L2.06 8l3.72 3.72a.749.749 0 0 1-.326 1.275.749.749 0 0 1-.734-.215L.47 8.53a.75.75 0 0 1 0-1.06Z"></path></svg></span><span data-component="text" data-content="Code">Code</span></a></li><li class="prc-UnderlineNav-UnderlineNavItem-syRjR"><a href="https://github.com/hyprwm/Hyprland/issues" data-hotkey="g i" data-tab-item="issues" data-react-nav="issues-react" data-turbo-frame="repo-content-turbo-frame" class="prc-components-UnderlineItem-7fP-n" data-discover="true"><span data-component="icon"><svg aria-hidden="true" focusable="false" class="octicon octicon-issue-opened" viewBox="0 0 16 16" width="16" height="16" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="M8 9.5a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Z"></path><path d="M8 0a8 8 0 1 1 0 16A8 8 0 0 1 8 0ZM1.5 8a6.5 6.5 0 1 0 13 0 6.5 6.5 0 0 0-13 0Z"></path></svg></span><span data-component="text" data-content="Issues">Issues</span><span data-component="counter"><span aria-hidden="true" data-variant="secondary" class="prc-CounterLabel-CounterLabel-X-kRU">59</span><span class="prc-VisuallyHidden-VisuallyHidden-Q0qSB">&nbsp;(<!-- -->59<!-- -->)</span></span></a></li><li class="prc-UnderlineNav-UnderlineNavItem-syRjR"><a href="https://github.com/hyprwm/Hyprland/pulls" data-hotkey="g p" data-tab-item="pull-requests" data-turbo-frame="repo-content-turbo-frame" class="prc-components-UnderlineItem-7fP-n" data-discover="true"><span data-component="icon"><svg aria-hidden="true" focusable="false" class="octicon octicon-git-pull-request" viewBox="0 0 16 16" width="16" height="16" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="M1.5 3.25a2.25 2.25 0 1 1 3 2.122v5.256a2.251 2.251 0 1 1-1.5 0V5.372A2.25 2.25 0 0 1 1.5 3.25Zm5.677-.177L9.573.677A.25.25 0 0 1 10 .854V2.5h1A2.5 2.5 0 0 1 13.5 5v5.628a2.251 2.251 0 1 1-1.5 0V5a1 1 0 0 0-1-1h-1v1.646a.25.25 0 0 1-.427.177L7.177 3.427a.25.25 0 0 1 0-.354ZM3.75 2.5a.75.75 0 1 0 0 1.5.75.75 0 0 0 0-1.5Zm0 9.5a.75.75 0 1 0 0 1.5.75.75 0 0 0 0-1.5Zm8.25.75a.75.75 0 1 0 1.5 0 .75.75 0 0 0-1.5 0Z"></path></svg></span><span data-component="text" data-content="Pull requests">Pull requests</span><span data-component="counter"><span aria-hidden="true" data-variant="secondary" class="prc-CounterLabel-CounterLabel-X-kRU">109</span><span class="prc-VisuallyHidden-VisuallyHidden-Q0qSB">&nbsp;(<!-- -->109<!-- -->)</span></span></a></li><li class="prc-UnderlineNav-UnderlineNavItem-syRjR"><a href="https://github.com/hyprwm/Hyprland/discussions" data-hotkey="g g" data-tab-item="discussions" data-turbo-frame="repo-content-turbo-frame" class="prc-components-UnderlineItem-7fP-n" data-discover="true"><span data-component="icon"><svg aria-hidden="true" focusable="false" class="octicon octicon-comment-discussion" viewBox="0 0 16 16" width="16" height="16" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="M1.75 1h8.5c.966 0 1.75.784 1.75 1.75v5.5A1.75 1.75 0 0 1 10.25 10H7.061l-2.574 2.573A1.458 1.458 0 0 1 2 11.543V10h-.25A1.75 1.75 0 0 1 0 8.25v-5.5C0 1.784.784 1 1.75 1ZM1.5 2.75v5.5c0 .138.112.25.25.25h1a.75.75 0 0 1 .75.75v2.19l2.72-2.72a.749.749 0 0 1 .53-.22h3.5a.25.25 0 0 0 .25-.25v-5.5a.25.25 0 0 0-.25-.25h-8.5a.25.25 0 0 0-.25.25Zm13 2a.25.25 0 0 0-.25-.25h-.5a.75.75 0 0 1 0-1.5h.5c.966 0 1.75.784 1.75 1.75v5.5A1.75 1.75 0 0 1 14.25 12H14v1.543a1.458 1.458 0 0 1-2.487 1.03L9.22 12.28a.749.749 0 0 1 .326-1.275.749.749 0 0 1 .734.215l2.22 2.22v-2.19a.75.75 0 0 1 .75-.75h1a.25.25 0 0 0 .25-.25Z"></path></svg></span><span data-component="text" data-content="Discussions">Discussions</span></a></li><li class="prc-UnderlineNav-UnderlineNavItem-syRjR"><a href="https://github.com/hyprwm/Hyprland/actions" data-hotkey="g a" data-tab-item="actions" data-turbo-frame="repo-content-turbo-frame" class="prc-components-UnderlineItem-7fP-n" data-discover="true"><span data-component="icon"><svg aria-hidden="true" focusable="false" class="octicon octicon-play" viewBox="0 0 16 16" width="16" height="16" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="M8 0a8 8 0 1 1 0 16A8 8 0 0 1 8 0ZM1.5 8a6.5 6.5 0 1 0 13 0 6.5 6.5 0 0 0-13 0Zm4.879-2.773 4.264 2.559a.25.25 0 0 1 0 .428l-4.264 2.559A.25.25 0 0 1 6 10.559V5.442a.25.25 0 0 1 .379-.215Z"></path></svg></span><span data-component="text" data-content="Actions">Actions</span></a></li><li class="prc-UnderlineNav-UnderlineNavItem-syRjR"><a href="https://github.com/hyprwm/Hyprland/projects" data-hotkey="g b" data-tab-item="projects" data-turbo-frame="repo-content-turbo-frame" class="prc-components-UnderlineItem-7fP-n" data-discover="true"><span data-component="icon"><svg aria-hidden="true" focusable="false" class="octicon octicon-table" viewBox="0 0 16 16" width="16" height="16" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="M0 1.75C0 .784.784 0 1.75 0h12.5C15.216 0 16 .784 16 1.75v12.5A1.75 1.75 0 0 1 14.25 16H1.75A1.75 1.75 0 0 1 0 14.25ZM6.5 6.5v8h7.75a.25.25 0 0 0 .25-.25V6.5Zm8-1.5V1.75a.25.25 0 0 0-.25-.25H6.5V5Zm-13 1.5v7.75c0 .138.112.25.25.25H5v-8ZM5 5V1.5H1.75a.25.25 0 0 0-.25.25V5Z"></path></svg></span><span data-component="text" data-content="Projects">Projects</span></a></li><li class="prc-UnderlineNav-UnderlineNavItem-syRjR"><a href="https://github.com/hyprwm/Hyprland/wiki" data-hotkey="g w" data-tab-item="wiki" data-turbo-frame="repo-content-turbo-frame" class="prc-components-UnderlineItem-7fP-n" data-discover="true"><span data-component="icon"><svg aria-hidden="true" focusable="false" class="octicon octicon-book" viewBox="0 0 16 16" width="16" height="16" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="M0 1.75A.75.75 0 0 1 .75 1h4.253c1.227 0 2.317.59 3 1.501A3.743 3.743 0 0 1 11.006 1h4.245a.75.75 0 0 1 .75.75v10.5a.75.75 0 0 1-.75.75h-4.507a2.25 2.25 0 0 0-1.591.659l-.622.621a.75.75 0 0 1-1.06 0l-.622-.621A2.25 2.25 0 0 0 5.258 13H.75a.75.75 0 0 1-.75-.75Zm7.251 10.324.004-5.073-.002-2.253A2.25 2.25 0 0 0 5.003 2.5H1.5v9h3.757a3.75 3.75 0 0 1 1.994.574ZM8.755 4.75l-.004 7.322a3.752 3.752 0 0 1 1.992-.572H14.5v-9h-3.495a2.25 2.25 0 0 0-2.25 2.25Z"></path></svg></span><span data-component="text" data-content="Wiki">Wiki</span></a></li><li class="prc-UnderlineNav-UnderlineNavItem-syRjR"><a href="https://github.com/hyprwm/Hyprland/security" data-hotkey="g s" data-tab-item="security" data-turbo-frame="repo-content-turbo-frame" class="prc-components-UnderlineItem-7fP-n" data-discover="true"><span data-component="icon"><svg aria-hidden="true" focusable="false" class="octicon octicon-shield" viewBox="0 0 16 16" width="16" height="16" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="M7.467.133a1.748 1.748 0 0 1 1.066 0l5.25 1.68A1.75 1.75 0 0 1 15 3.48V7c0 1.566-.32 3.182-1.303 4.682-.983 1.498-2.585 2.813-5.032 3.855a1.697 1.697 0 0 1-1.33 0c-2.447-1.042-4.049-2.357-5.032-3.855C1.32 10.182 1 8.566 1 7V3.48a1.75 1.75 0 0 1 1.217-1.667Zm.61 1.429a.25.25 0 0 0-.153 0l-5.25 1.68a.25.25 0 0 0-.174.238V7c0 1.358.275 2.666 1.057 3.86.784 1.194 2.121 2.34 4.366 3.297a.196.196 0 0 0 .154 0c2.245-.956 3.582-2.104 4.366-3.298C13.225 9.666 13.5 8.36 13.5 7V3.48a.251.251 0 0 0-.174-.237l-5.25-1.68ZM8.75 4.75v3a.75.75 0 0 1-1.5 0v-3a.75.75 0 0 1 1.5 0ZM9 10.5a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z"></path></svg></span><span data-component="text" data-content="Security">Security</span></a></li><li class="prc-UnderlineNav-UnderlineNavItem-syRjR"><a href="https://github.com/hyprwm/Hyprland/pulse" data-tab-item="insights" data-turbo-frame="repo-content-turbo-frame" class="prc-components-UnderlineItem-7fP-n" data-discover="true"><span data-component="icon"><svg aria-hidden="true" focusable="false" class="octicon octicon-graph" viewBox="0 0 16 16" width="16" height="16" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="M1.5 1.75V13.5h13.75a.75.75 0 0 1 0 1.5H.75a.75.75 0 0 1-.75-.75V1.75a.75.75 0 0 1 1.5 0Zm14.28 2.53-5.25 5.25a.75.75 0 0 1-1.06 0L7 7.06 4.28 9.78a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042l3.25-3.25a.75.75 0 0 1 1.06 0L10 7.94l4.72-4.72a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042Z"></path></svg></span><span data-component="text" data-content="Insights">Insights</span></a></li></ul></nav></header><script type="application/json" id="__PRIMER_DATA__R_0___">{"resolvedServerColorMode":"night"}</script></div>
+</react-partial>
+
+
+ <div class="js-global-bar" style="display: none;">
+
+
+
+<qbsearch-input class="search-input" data-scope="repo:hyprwm/Hyprland" data-custom-scopes-path="/search/custom_scopes" data-delete-custom-scopes-csrf="3sOpYQMYYFn78JaSJil_3YGW_If31lb7NQ1JifFgR0WUyqJBnGgzEAxdnJs7m3C9o_bCMSy33x6OdRU4Vjqt8w" data-max-custom-scopes="10" data-header-redesign-enabled="true" data-initial-value="" data-blackbird-suggestions-path="/search/suggestions" data-jump-to-suggestions-path="/_graphql/GetSuggestedNavigationDestinations" data-current-repository="hyprwm/Hyprland" data-current-org="hyprwm" data-current-owner="" data-logged-in="true" data-copilot-chat-enabled="true" data-nl-search-enabled="false" data-catalyst="">
+ <div class="search-input-container search-with-dialog position-relative d-flex flex-row flex-items-center height-auto color-bg-transparent border-0 color-fg-subtle mx-0" data-action="click:qbsearch-input#searchInputContainerClicked">
+
+ <input type="hidden" name="type" class="js-site-search-type-field">
+
+
+<div class="Overlay--hidden " data-modal-dialog-overlay="">
+ <modal-dialog data-action="close:qbsearch-input#handleClose cancel:qbsearch-input#handleClose" data-target="qbsearch-input.searchSuggestionsDialog" role="dialog" id="search-suggestions-dialog" aria-modal="true" aria-labelledby="search-suggestions-dialog-header" data-view-component="true" class="Overlay Overlay--width-medium Overlay--height-auto">
+ <h1 id="search-suggestions-dialog-header" class="sr-only">Search code, repositories, users, issues, pull requests...</h1>
+ <div class="Overlay-body Overlay-body--paddingNone">
+
+ <div data-view-component="true"> <div class="search-suggestions position-absolute width-full color-shadow-large border color-fg-default color-bg-default overflow-hidden d-flex flex-column query-builder-container" style="border-radius: 12px;" data-target="qbsearch-input.queryBuilderContainer" hidden="">
+ <!-- '"` --><!-- </textarea></xmp> --><form id="query-builder-test-form" action="https://github.com/hyprwm/Hyprland/releases/tag/v0.54.0" accept-charset="UTF-8" method="get">
+ <query-builder data-target="qbsearch-input.queryBuilder" id="query-builder-query-builder-test" data-filter-key=":" data-view-component="true" class="QueryBuilder search-query-builder" data-min-width="300" data-catalyst="">
+ <div class="FormControl FormControl--fullWidth">
+ <label id="query-builder-test-label" for="query-builder-test" class="FormControl-label sr-only">
+ Search
+ </label>
+ <div class="QueryBuilder-StyledInput width-fit " data-target="query-builder.styledInput">
+ <span id="query-builder-test-leadingvisual-wrap" class="FormControl-input-leadingVisualWrap QueryBuilder-leadingVisualWrap">
+ <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-search FormControl-input-leadingVisual">
+ <path d="M10.68 11.74a6 6 0 0 1-7.922-8.982 6 6 0 0 1 8.982 7.922l3.04 3.04a.749.749 0 0 1-.326 1.275.749.749 0 0 1-.734-.215ZM11.5 7a4.499 4.499 0 1 0-8.997 0A4.499 4.499 0 0 0 11.5 7Z"></path>
+</svg>
+ </span>
+ <div data-target="query-builder.styledInputContainer" class="QueryBuilder-StyledInputContainer">
+ <div aria-hidden="true" class="QueryBuilder-StyledInputContent" data-target="query-builder.styledInputContent"></div>
+ <div class="QueryBuilder-InputWrapper">
+ <div aria-hidden="true" class="QueryBuilder-Sizer" data-target="query-builder.sizer"><span></span></div>
+ <input id="query-builder-test" name="query-builder-test" value="" autocomplete="off" type="text" role="combobox" spellcheck="false" aria-expanded="false" aria-describedby="validation-b3d31d17-85cb-4ed1-aa52-8b95fd4ec21d" data-target="query-builder.input" data-action="
+ input:query-builder#inputChange
+ blur:query-builder#inputBlur
+ keydown:query-builder#inputKeydown
+ focus:query-builder#inputFocus
+ " data-view-component="true" class="FormControl-input QueryBuilder-Input FormControl-medium" aria-controls="query-builder-test-results" aria-autocomplete="list" aria-haspopup="listbox" style="width: 300px;">
+ </div>
+ </div>
+ <span data-target="query-builder.clearButton" hidden="">
+ <span class="sr-only" id="query-builder-test-clear">Clear</span>
+ <button role="button" id="query-builder-test-clear-button" aria-labelledby="query-builder-test-clear query-builder-test-label" data-action="
+ click:query-builder#clear
+ focus:query-builder#clearButtonFocus
+ blur:query-builder#clearButtonBlur
+ " variant="small" type="button" data-view-component="true" class="Button Button--iconOnly Button--invisible Button--medium mr-1 px-2 py-0 d-flex flex-items-center rounded-1 color-fg-muted"> <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-x-circle-fill Button-visual">
+ <path d="M2.343 13.657A8 8 0 1 1 13.658 2.343 8 8 0 0 1 2.343 13.657ZM6.03 4.97a.751.751 0 0 0-1.042.018.751.751 0 0 0-.018 1.042L6.94 8 4.97 9.97a.749.749 0 0 0 .326 1.275.749.749 0 0 0 .734-.215L8 9.06l1.97 1.97a.749.749 0 0 0 1.275-.326.749.749 0 0 0-.215-.734L9.06 8l1.97-1.97a.749.749 0 0 0-.326-1.275.749.749 0 0 0-.734.215L8 6.94Z"></path>
+</svg>
+</button>
+
+ </span>
+ </div>
+ <template id="search-icon"></template>
+
+<template id="code-icon"></template>
+
+<template id="file-code-icon"></template>
+
+<template id="history-icon"></template>
+
+<template id="repo-icon"></template>
+
+<template id="bookmark-icon"></template>
+
+<template id="plus-circle-icon"></template>
+
+<template id="circle-icon"></template>
+
+<template id="trash-icon"></template>
+
+<template id="team-icon"></template>
+
+<template id="project-icon"></template>
+
+<template id="pencil-icon"></template>
+
+<template id="copilot-icon"></template>
+
+<template id="copilot-error-icon"></template>
+
+<template id="workflow-icon"></template>
+
+<template id="book-icon"></template>
+
+<template id="code-review-icon"></template>
+
+<template id="codespaces-icon"></template>
+
+<template id="comment-icon"></template>
+
+<template id="comment-discussion-icon"></template>
+
+<template id="organization-icon"></template>
+
+<template id="rocket-icon"></template>
+
+<template id="shield-check-icon"></template>
+
+<template id="heart-icon"></template>
+
+<template id="server-icon"></template>
+
+<template id="globe-icon"></template>
+
+<template id="issue-opened-icon"></template>
+
+<template id="device-mobile-icon"></template>
+
+<template id="package-icon"></template>
+
+<template id="credit-card-icon"></template>
+
+<template id="play-icon"></template>
+
+<template id="gift-icon"></template>
+
+<template id="code-square-icon"></template>
+
+<template id="device-desktop-icon"></template>
+
+ <div class="position-relative">
+ <ul role="listbox" class="ActionListWrap QueryBuilder-ListWrap" aria-label="Suggestions" data-action="
+ combobox-commit:query-builder#comboboxCommit
+ mousedown:query-builder#resultsMousedown
+ " data-target="query-builder.resultsList" data-persist-list="false" id="query-builder-test-results" tabindex="-1"></ul>
+
+ </div>
+ <div class="FormControl-inlineValidation" id="validation-b3d31d17-85cb-4ed1-aa52-8b95fd4ec21d" hidden="hidden">
+ <span class="FormControl-inlineValidation--visual">
+ <svg aria-hidden="true" height="12" viewBox="0 0 12 12" version="1.1" width="12" data-view-component="true" class="octicon octicon-alert-fill">
+ <path d="M4.855.708c.5-.896 1.79-.896 2.29 0l4.675 8.351a1.312 1.312 0 0 1-1.146 1.954H1.33A1.313 1.313 0 0 1 .183 9.058ZM7 7V3H5v4Zm-1 3a1 1 0 1 0 0-2 1 1 0 0 0 0 2Z"></path>
+</svg>
+ </span>
+ <span></span>
+</div> </div>
+ <div data-target="query-builder.screenReaderFeedback" aria-live="polite" aria-atomic="true" class="sr-only">0 suggestions.</div>
+</query-builder></form>
+ <div class="d-flex flex-row color-fg-muted tmp-px-3 text-small color-bg-default search-feedback-prompt">
+ <a target="_blank" href="https://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax" data-view-component="true" class="Link color-fg-accent text-normal ml-2">Search syntax tips</a> <div class="d-flex flex-1"></div>
+ <button data-action="click:qbsearch-input#showFeedbackDialog" type="button" data-view-component="true" class="Button--link Button--medium Button color-fg-accent text-normal ml-2"> <span class="Button-content">
+ <span class="Button-label">Give feedback</span>
+ </span>
+</button>
+ </div>
+ </div>
+</div>
+
+ </div>
+</modal-dialog></div>
+ </div>
+ <div data-action="click:qbsearch-input#retract" class="dark-backdrop position-fixed" hidden="" data-target="qbsearch-input.darkBackdrop"></div>
+ <div class="color-fg-default">
+
+<dialog-helper>
+ <dialog data-target="qbsearch-input.feedbackDialog" data-action="close:qbsearch-input#handleDialogClose cancel:qbsearch-input#handleDialogClose" id="feedback-dialog" aria-modal="true" aria-labelledby="feedback-dialog-title" aria-describedby="feedback-dialog-description" data-view-component="true" class="Overlay Overlay-whenNarrow Overlay--size-medium Overlay--motion-scaleFade Overlay--disableScroll">
+ <div data-view-component="true" class="Overlay-header">
+ <div class="Overlay-headerContentWrap">
+ <div class="Overlay-titleWrap">
+ <h1 class="Overlay-title " id="feedback-dialog-title">
+ Provide feedback
+ </h1>
+
+ </div>
+ <div class="Overlay-actionWrap">
+ <button data-close-dialog-id="feedback-dialog" aria-label="Close" type="button" data-view-component="true" class="close-button Overlay-closeButton"><svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-x">
+ <path d="M3.72 3.72a.75.75 0 0 1 1.06 0L8 6.94l3.22-3.22a.749.749 0 0 1 1.275.326.749.749 0 0 1-.215.734L9.06 8l3.22 3.22a.749.749 0 0 1-.326 1.275.749.749 0 0 1-.734-.215L8 9.06l-3.22 3.22a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042L6.94 8 3.72 4.78a.75.75 0 0 1 0-1.06Z"></path>
+</svg></button>
+ </div>
+ </div>
+
+</div>
+ <scrollable-region data-labelled-by="feedback-dialog-title" data-catalyst="" style="overflow: auto;">
+ <div data-view-component="true" class="Overlay-body"> <!-- '"` --><!-- </textarea></xmp> --><form id="code-search-feedback-form" data-turbo="false" action="https://github.com/search/feedback" accept-charset="UTF-8" method="post"><input type="hidden" name="authenticity_token" value="amAb3AqsxQ1YZQ_D8Trmgpv64YSKFfQ2eqBnBXLlcAsw6081iHw6xI6YCYl0CxfNh7QRepvykrVPwt6628Y3nA">
+ <p>We read every piece of feedback, and take your input very seriously.</p>
+ <textarea name="feedback" class="form-control width-full mb-2" style="height: 120px" id="feedback"></textarea>
+ <input name="include_email" id="include_email" aria-label="Include my email address so I can be contacted" class="form-control mr-2" type="checkbox">
+ <label for="include_email" style="font-weight: normal">Include my email address so I can be contacted</label>
+</form></div>
+ </scrollable-region>
+ <div data-view-component="true" class="Overlay-footer Overlay-footer--alignEnd"> <button data-close-dialog-id="feedback-dialog" type="button" data-view-component="true" class="btn"> Cancel
+</button>
+ <button form="code-search-feedback-form" data-action="click:qbsearch-input#submitFeedback" type="submit" data-view-component="true" class="btn-primary btn"> Submit feedback
+</button>
+</div>
+</dialog></dialog-helper>
+
+ <custom-scopes data-target="qbsearch-input.customScopesManager" data-catalyst="">
+
+<dialog-helper>
+ <dialog data-target="custom-scopes.customScopesModalDialog" data-action="close:qbsearch-input#handleDialogClose cancel:qbsearch-input#handleDialogClose" id="custom-scopes-dialog" aria-modal="true" aria-labelledby="custom-scopes-dialog-title" aria-describedby="custom-scopes-dialog-description" data-view-component="true" class="Overlay Overlay-whenNarrow Overlay--size-medium Overlay--motion-scaleFade Overlay--disableScroll">
+ <div data-view-component="true" class="Overlay-header Overlay-header--divided">
+ <div class="Overlay-headerContentWrap">
+ <div class="Overlay-titleWrap">
+ <h1 class="Overlay-title " id="custom-scopes-dialog-title">
+ Saved searches
+ </h1>
+ <h2 id="custom-scopes-dialog-description" class="Overlay-description">Use saved searches to filter your results more quickly</h2>
+ </div>
+ <div class="Overlay-actionWrap">
+ <button data-close-dialog-id="custom-scopes-dialog" aria-label="Close" type="button" data-view-component="true" class="close-button Overlay-closeButton"><svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-x">
+ <path d="M3.72 3.72a.75.75 0 0 1 1.06 0L8 6.94l3.22-3.22a.749.749 0 0 1 1.275.326.749.749 0 0 1-.215.734L9.06 8l3.22 3.22a.749.749 0 0 1-.326 1.275.749.749 0 0 1-.734-.215L8 9.06l-3.22 3.22a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042L6.94 8 3.72 4.78a.75.75 0 0 1 0-1.06Z"></path>
+</svg></button>
+ </div>
+ </div>
+
+</div>
+ <scrollable-region data-labelled-by="custom-scopes-dialog-title" data-catalyst="" style="overflow: auto;">
+ <div data-view-component="true" class="Overlay-body"> <div data-target="custom-scopes.customScopesModalDialogFlash"></div>
+
+ <div hidden="" class="create-custom-scope-form" data-target="custom-scopes.createCustomScopeForm">
+ <!-- '"` --><!-- </textarea></xmp> --><form id="custom-scopes-dialog-form" data-turbo="false" action="https://github.com/search/custom_scopes" accept-charset="UTF-8" method="post"><input type="hidden" name="authenticity_token" value="LsoGliUqHYaB3GqcITN_2GVIRi_NhsM8HBfBI-Muv4RMr2ia9p9vqHgOzqo3AkHsygNWNY76xjkW5yykc3G9rg">
+ <div data-target="custom-scopes.customScopesModalDialogFlash"></div>
+
+ <input type="hidden" id="custom_scope_id" name="custom_scope_id" data-target="custom-scopes.customScopesIdField">
+
+ <div class="form-group">
+ <label for="custom_scope_name">Name</label>
+ <auto-check src="/search/custom_scopes/check_name" required="">
+ <input type="text" name="custom_scope_name" id="custom_scope_name" data-target="custom-scopes.customScopesNameField" class="form-control" autocomplete="off" placeholder="github-ruby" required="" maxlength="50" spellcheck="false">
+ <input type="hidden" value="gOZ4QxM1JheNB9xNoTSuBZ53K0mGmmRAthxxwon3Hp6BlfsSlobE6-rCzjUi2UtrojfVKQqT9LEj2aOo7DR1MQ" data-csrf="true">
+ </auto-check>
+ </div>
+
+ <div class="form-group">
+ <label for="custom_scope_query">Query</label>
+ <input type="text" name="custom_scope_query" id="custom_scope_query" data-target="custom-scopes.customScopesQueryField" class="form-control" autocomplete="off" placeholder="(repo:mona/a OR repo:mona/b) AND lang:python" required="" maxlength="500">
+ </div>
+
+ <p class="text-small color-fg-muted">
+ To see all available qualifiers, see our <a class="Link--inTextBlock" href="https://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax">documentation</a>.
+ </p>
+</form> </div>
+
+ <div data-target="custom-scopes.manageCustomScopesForm">
+ <div data-target="custom-scopes.list"></div>
+ </div>
+
+</div>
+ </scrollable-region>
+ <div data-view-component="true" class="Overlay-footer Overlay-footer--alignEnd Overlay-footer--divided"> <button data-action="click:custom-scopes#customScopesCancel" type="button" data-view-component="true" class="btn"> Cancel
+</button>
+ <button form="custom-scopes-dialog-form" data-action="click:custom-scopes#customScopesSubmit" data-target="custom-scopes.customScopesSubmitButton" type="submit" data-view-component="true" class="btn-primary btn"> Create saved search
+</button>
+</div>
+</dialog></dialog-helper>
+ </custom-scopes>
+ </div>
+</qbsearch-input> <input type="hidden" value="RhJ5eCbpGq2IpxoQGH1TXxeXWgkemycuSZzzjH1I6sfM_rA6ht3TUGeKDS_QYeTKJPSt6ni8Hd_bGYbxDRJQEQ" data-csrf="true" class="js-data-jump-to-suggestions-path-csrf">
+
+
+ </div>
+
+
+ <div hidden="hidden" data-view-component="true" class="js-stale-session-flash stale-session-flash flash flash-warn flash-full">
+
+ <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-alert">
+ <path d="M6.457 1.047c.659-1.234 2.427-1.234 3.086 0l6.082 11.378A1.75 1.75 0 0 1 14.082 15H1.918a1.75 1.75 0 0 1-1.543-2.575Zm1.763.707a.25.25 0 0 0-.44 0L1.698 13.132a.25.25 0 0 0 .22.368h12.164a.25.25 0 0 0 .22-.368Zm.53 3.996v2.5a.75.75 0 0 1-1.5 0v-2.5a.75.75 0 0 1 1.5 0ZM9 11a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z"></path>
+</svg>
+ <span class="js-stale-session-flash-signed-in" hidden="">You signed in with another tab or window. <a class="Link--inTextBlock" href="https://github.com/hyprwm/Hyprland/releases/tag/v0.54.0">Reload</a> to refresh your session.</span>
+ <span class="js-stale-session-flash-signed-out" hidden="">You signed out in another tab or window. <a class="Link--inTextBlock" href="https://github.com/hyprwm/Hyprland/releases/tag/v0.54.0">Reload</a> to refresh your session.</span>
+ <span class="js-stale-session-flash-switched" hidden="">You switched accounts on another tab or window. <a class="Link--inTextBlock" href="https://github.com/hyprwm/Hyprland/releases/tag/v0.54.0">Reload</a> to refresh your session.</span>
+
+ <button id="icon-button-4f5f3a05-1e3e-4a87-8607-eb7c4dd27ba6" aria-labelledby="tooltip-0df07f87-fd38-4120-af36-e244c1774cdc" type="button" data-view-component="true" class="Button Button--iconOnly Button--invisible Button--medium flash-close js-flash-close"> <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-x Button-visual">
+ <path d="M3.72 3.72a.75.75 0 0 1 1.06 0L8 6.94l3.22-3.22a.749.749 0 0 1 1.275.326.749.749 0 0 1-.215.734L9.06 8l3.22 3.22a.749.749 0 0 1-.326 1.275.749.749 0 0 1-.734-.215L8 9.06l-3.22 3.22a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042L6.94 8 3.72 4.78a.75.75 0 0 1 0-1.06Z"></path>
+</svg>
+</button><tool-tip id="tooltip-0df07f87-fd38-4120-af36-e244c1774cdc" for="icon-button-4f5f3a05-1e3e-4a87-8607-eb7c4dd27ba6" popover="manual" data-direction="s" data-type="label" data-view-component="true" class="sr-only position-absolute" aria-hidden="true" role="tooltip"><template shadowrootmode="open"><style>
+ :host {
+ --tooltip-top: var(--tool-tip-position-top, 0);
+ --tooltip-left: var(--tool-tip-position-left, 0);
+ padding: var(--overlay-paddingBlock-condensed) var(--overlay-padding-condensed) !important;
+ font: var(--text-body-shorthand-small);
+ color: var(--tooltip-fgColor, var(--fgColor-onEmphasis)) !important;
+ text-align: center;
+ text-decoration: none;
+ text-shadow: none;
+ text-transform: none;
+ letter-spacing: normal;
+ word-wrap: break-word;
+ white-space: pre;
+ background: var(--tooltip-bgColor, var(--bgColor-emphasis)) !important;
+ border-radius: var(--borderRadius-medium);
+ border: 0 !important;
+ opacity: 0;
+ max-width: min(var(--overlay-width-small), 100vw);
+ word-wrap: break-word;
+ white-space: normal;
+ width: max-content !important;
+ inset: var(--tooltip-top) auto auto var(--tooltip-left) !important;
+ overflow: visible !important;
+ text-wrap: balance;
+ }
+
+ :host(:is(.tooltip-n, .tooltip-nw, .tooltip-ne)) {
+ --tooltip-top: calc(var(--tool-tip-position-top, 0) - var(--overlay-offset, 0.25rem));
+ --tooltip-left: var(--tool-tip-position-left);
+ }
+
+ :host(:is(.tooltip-s, .tooltip-sw, .tooltip-se)) {
+ --tooltip-top: calc(var(--tool-tip-position-top, 0) + var(--overlay-offset, 0.25rem));
+ --tooltip-left: var(--tool-tip-position-left);
+ }
+
+ :host(.tooltip-w) {
+ --tooltip-top: var(--tool-tip-position-top);
+ --tooltip-left: calc(var(--tool-tip-position-left, 0) - var(--overlay-offset, 0.25rem));
+ }
+
+ :host(.tooltip-e) {
+ --tooltip-top: var(--tool-tip-position-top);
+ --tooltip-left: calc(var(--tool-tip-position-left, 0) + var(--overlay-offset, 0.25rem));
+ }
+
+ :host:after{
+ position: absolute;
+ display: block;
+ right: 0;
+ left: 0;
+ height: var(--overlay-offset, 0.25rem);
+ content: "";
+ }
+
+ :host(.tooltip-s):after,
+ :host(.tooltip-se):after,
+ :host(.tooltip-sw):after {
+ bottom: 100%
+ }
+
+ :host(.tooltip-n):after,
+ :host(.tooltip-ne):after,
+ :host(.tooltip-nw):after {
+ top: 100%;
+ }
+
+ @keyframes tooltip-appear {
+ from {
+ opacity: 0;
+ }
+ to {
+ opacity: 1;
+ }
+ }
+
+ :host(:popover-open),
+ :host(:popover-open):before {
+ animation-name: tooltip-appear;
+ animation-duration: .1s;
+ animation-fill-mode: forwards;
+ animation-timing-function: ease-in;
+ }
+
+ :host(.\:popover-open) {
+ animation-name: tooltip-appear;
+ animation-duration: .1s;
+ animation-fill-mode: forwards;
+ animation-timing-function: ease-in;
+ }
+
+ @media (forced-colors: active) {
+ :host {
+ outline: solid 1px transparent;
+ }
+
+ :host:before {
+ display: none;
+ }
+ }
+ </style><slot></slot></template>Dismiss alert</tool-tip>
+
+
+
+</div>
+
+
+ </div>
+
+ <div id="start-of-content" class="show-on-focus"></div>
+
+
+
+
+
+
+
+
+ <div id="js-flash-container" class="flash-container" data-turbo-replace="">
+
+
+
+
+ <template class="js-flash-template"></template>
+</div>
+
+
+
+ <notification-shelf-watcher data-base-url="https://github.com/notifications/beta/shelf" data-channel="eyJjIjoibm90aWZpY2F0aW9uLWNoYW5nZWQ6NDc4MjMzIiwidCI6MTc3Mjg5OTg3OX0=--2e36e7120404f5806b3fbc84b0612109802ce181907d57219112cdbc70b94077" data-view-component="true" class="js-socket-channel" data-refresh-delay="500" data-catalyst="" data-throttle-delay="5000"></notification-shelf-watcher>
+ <div hidden="" data-initial="" data-target="notification-shelf-watcher.placeholder"></div>
+
+
+
+
+
+
+ <div class="application-main " data-commit-hovercards-enabled="" data-discussion-hovercards-enabled="" data-issue-and-pr-hovercards-enabled="" data-project-hovercards-enabled="">
+ <div itemscope="" itemtype="http://schema.org/SoftwareSourceCode" class="">
+ <main id="js-repo-pjax-container">
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <div id="repository-container-header" data-turbo-replace="" hidden=""></div>
+
+
+
+<turbo-frame id="repo-content-turbo-frame" target="_top" data-turbo-action="advance" class="">
+ <div id="repo-content-pjax-container" class="repository-content ">
+
+
+
+
+
+
+<div class="clearfix container-xl tmp-px-3 tmp-px-md-4 tmp-px-lg-5 tmp-mt-4">
+ <nav data-pjax="#repo-content-pjax-container" data-turbo-frame="repo-content-turbo-frame" aria-label="Breadcrumb" data-view-component="true" class="tmp-mb-5">
+ <ol>
+ <li data-view-component="true" class="breadcrumb-item "><a target="_self" href="https://github.com/hyprwm/Hyprland/releases" data-view-component="true" class="Link" data-turbo-frame="repo-content-turbo-frame">Releases</a></li>
+ <li data-view-component="true" class="breadcrumb-item breadcrumb-item-selected"><a target="_self" aria-current="page" href="https://github.com/hyprwm/Hyprland/releases/tag/v0.54.0" data-view-component="true" class="Link" data-turbo-frame="repo-content-turbo-frame">v0.54.0</a></li>
+ </ol>
+</nav>
+<div class="" data-hpc="">
+ <div data-view-component="true" class="Box">
+
+ <div data-view-component="true" class="Box-body"> <div class="d-flex flex-md-row flex-column">
+ <div class="d-flex flex-row flex-1 tmp-mb-3 wb-break-word">
+ <div class="flex-1" data-pjax="#repo-content-pjax-container" data-turbo-frame="repo-content-turbo-frame">
+ <h1 data-view-component="true" class="tmp-mr-3 d-inline">v0.54.0</h1>
+ <span>
+
+ <div class="ml-2 d-none d-md-inline">
+
+
+ </div>
+ </span>
+ </div>
+
+ <div class="tmp-mt-3 ml-2 d-md-none">
+
+ </div>
+ <div class="ml-2 tmp-mt-3 d-md-none">
+
+
+ </div>
+ </div>
+ <div class="d-flex tmp-mb-3" data-pjax="#repo-content-pjax-container" data-turbo-frame="repo-content-turbo-frame">
+ <select-panel id="select-panel-47881ee0-76f5-40de-a6a4-60e27aa106aa" anchor-align="start" anchor-side="outside-bottom" data-select-variant="single" data-fetch-strategy="eventually_local" data-open-on-load="false" data-view-component="true" data-catalyst="">
+ <dialog-helper>
+ <button id="select-panel-47881ee0-76f5-40de-a6a4-60e27aa106aa-button" aria-controls="select-panel-47881ee0-76f5-40de-a6a4-60e27aa106aa-dialog" aria-haspopup="dialog" aria-expanded="false" type="button" data-view-component="true" class="Button--secondary Button--small Button"> <span class="Button-content">
+ <span class="Button-label">Compare</span>
+ <span class="Button-visual Button-trailingVisual">
+ <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-triangle-down">
+ <path d="m4.427 7.427 3.396 3.396a.25.25 0 0 0 .354 0l3.396-3.396A.25.25 0 0 0 11.396 7H4.604a.25.25 0 0 0-.177.427Z"></path>
+</svg>
+ </span>
+ </span>
+</button>
+
+ <dialog id="select-panel-47881ee0-76f5-40de-a6a4-60e27aa106aa-dialog" aria-labelledby="select-panel-47881ee0-76f5-40de-a6a4-60e27aa106aa-dialog-title" data-target="select-panel.dialog" style="position: absolute;" data-view-component="true" class="Overlay Overlay-whenNarrow Overlay--size-small-portrait">
+ <div data-view-component="true" class="Overlay-header Overlay-header--divided">
+ <div class="Overlay-headerContentWrap">
+ <div class="Overlay-titleWrap">
+ <h1 class="Overlay-title " id="select-panel-47881ee0-76f5-40de-a6a4-60e27aa106aa-dialog-title">
+ Choose a tag to compare
+ </h1>
+
+ </div>
+ <div class="Overlay-actionWrap">
+ <button data-close-dialog-id="select-panel-47881ee0-76f5-40de-a6a4-60e27aa106aa-dialog" aria-label="Close" type="button" data-view-component="true" class="close-button Overlay-closeButton"><svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-x">
+ <path d="M3.72 3.72a.75.75 0 0 1 1.06 0L8 6.94l3.22-3.22a.749.749 0 0 1 1.275.326.749.749 0 0 1-.215.734L9.06 8l3.22 3.22a.749.749 0 0 1-.326 1.275.749.749 0 0 1-.734-.215L8 9.06l-3.22 3.22a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042L6.94 8 3.72 4.78a.75.75 0 0 1 0-1.06Z"></path>
+</svg></button>
+ </div>
+ </div>
+ <div data-view-component="true" class="Overlay-headerFilter"> <div data-target="select-panel.bannerErrorElement" hidden="">
+ <x-banner data-dismiss-scheme="none" data-view-component="true" data-catalyst="">
+ <div data-view-component="true" class="Banner flash Banner--error flash-error mb-2">
+ <div class="Banner-visual">
+ <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-stop">
+ <path d="M4.47.22A.749.749 0 0 1 5 0h6c.199 0 .389.079.53.22l4.25 4.25c.141.14.22.331.22.53v6a.749.749 0 0 1-.22.53l-4.25 4.25A.749.749 0 0 1 11 16H5a.749.749 0 0 1-.53-.22L.22 11.53A.749.749 0 0 1 0 11V5c0-.199.079-.389.22-.53Zm.84 1.28L1.5 5.31v5.38l3.81 3.81h5.38l3.81-3.81V5.31L10.69 1.5ZM8 4a.75.75 0 0 1 .75.75v3.5a.75.75 0 0 1-1.5 0v-3.5A.75.75 0 0 1 8 4Zm0 8a1 1 0 1 1 0-2 1 1 0 0 1 0 2Z"></path>
+</svg>
+ </div>
+ <div data-view-component="true" class="Banner-message">
+ <p class="Banner-title" data-target="x-banner.titleText">
+ </p><h2 class="f6 text-normal">Sorry, something went wrong.</h2>
+<p></p>
+</div></div></x-banner> </div>
+ <remote-input aria-owns="select-panel-47881ee0-76f5-40de-a6a4-60e27aa106aa-body" data-target="select-panel.remoteInput" data-view-component="true">
+ <primer-text-field class="FormControl width-full FormControl--fullWidth" data-catalyst="">
+ <label for="select-panel-47881ee0-76f5-40de-a6a4-60e27aa106aa-filter" id="label-f9ad084b-2cbb-4fcb-bb6f-9adc590d5258" class="sr-only FormControl-label position-absolute sr-only FormControl-label">
+ Filter
+</label>
+ <div class="FormControl-input-wrap FormControl-input-wrap--leadingVisual">
+ <span class="FormControl-input-leadingVisualWrap">
+ <svg data-target="primer-text-field.leadingVisual" aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-search FormControl-input-leadingVisual">
+ <path d="M10.68 11.74a6 6 0 0 1-7.922-8.982 6 6 0 0 1 8.982 7.922l3.04 3.04a.749.749 0 0 1-.326 1.275.749.749 0 0 1-.734-.215ZM11.5 7a4.499 4.499 0 1 0-8.997 0A4.499 4.499 0 0 0 11.5 7Z"></path>
+</svg>
+ <span hidden="hidden" data-target="primer-text-field.leadingSpinner" data-view-component="true">
+ <svg style="box-sizing: content-box; color: var(--color-icon-primary);" width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true" data-view-component="true" class="anim-rotate">
+ <circle cx="8" cy="8" r="7" stroke="currentColor" stroke-opacity="0.25" stroke-width="2" vector-effect="non-scaling-stroke" fill="none"></circle>
+ <path d="M15 8a7.002 7.002 0 00-7-7" stroke="currentColor" stroke-width="2" stroke-linecap="round" vector-effect="non-scaling-stroke"></path>
+</svg> <span class="sr-only">Loading</span>
+</span>
+ </span>
+
+ <input id="select-panel-47881ee0-76f5-40de-a6a4-60e27aa106aa-filter" type="search" autofocus="autofocus" data-target="primer-text-field.inputElement select-panel.filterInputTextField" aria-describedby="validation-f9ad084b-2cbb-4fcb-bb6f-9adc590d5258" class="form-control FormControl-input FormControl-medium" name="filter" autocomplete="off" spellcheck="false">
+</div>
+ <div class="FormControl-inlineValidation" id="validation-f9ad084b-2cbb-4fcb-bb6f-9adc590d5258" hidden="hidden">
+ <span class="FormControl-inlineValidation--visual" data-target="primer-text-field.validationSuccessIcon" hidden=""><svg aria-hidden="true" height="12" viewBox="0 0 12 12" version="1.1" width="12" data-view-component="true" class="octicon octicon-check-circle-fill">
+ <path d="M6 0a6 6 0 1 1 0 12A6 6 0 0 1 6 0Zm-.705 8.737L9.63 4.403 8.392 3.166 5.295 6.263l-1.7-1.702L2.356 5.8l2.938 2.938Z"></path>
+</svg></span>
+ <span class=" FormControl-inlineValidation--visual" data-target="primer-text-field.validationErrorIcon"><svg aria-hidden="true" height="12" viewBox="0 0 12 12" version="1.1" width="12" data-view-component="true" class="octicon octicon-alert-fill">
+ <path d="M4.855.708c.5-.896 1.79-.896 2.29 0l4.675 8.351a1.312 1.312 0 0 1-1.146 1.954H1.33A1.313 1.313 0 0 1 .183 9.058ZM7 7V3H5v4Zm-1 3a1 1 0 1 0 0-2 1 1 0 0 0 0 2Z"></path>
+</svg></span>
+ <span></span>
+</div>
+
+</primer-text-field>
+</remote-input></div>
+</div> <div data-view-component="true" class="Overlay-body p-0">
+ <focus-group direction="vertical" mnemonics="" retain="">
+ <live-region data-target="select-panel.liveRegion"><template shadowrootmode="open">
+<style>
+:host {
+ border: 0;
+ clip: rect(0 0 0 0);
+ clip-path: inset(50%);
+ height: 1px;
+ margin: -1px;
+ overflow: hidden;
+ padding: 0;
+ position: absolute;
+ white-space: nowrap;
+ width: 1px;
+}
+</style>
+<div id="polite" aria-live="polite" aria-atomic="true"></div>
+<div id="assertive" aria-live="assertive" aria-atomic="true"></div>
+</template></live-region>
+ <div data-fetch-strategy="eventually_local" data-target="select-panel.list" data-view-component="true">
+ <div id="select-panel-47881ee0-76f5-40de-a6a4-60e27aa106aa-body">
+ <include-fragment data-target="select-panel.includeFragment" loading="lazy" src="/hyprwm/Hyprland/refs?tag_name=v0.54.0&amp;experimental=1" accept="text/fragment+html" data-nonce="v2:20d102c3-9aa6-8fb8-b20f-17f6fa288bc7" data-view-component="true"><template shadowrootmode="open"><style>:host {display: block;}</style><slot></slot></template>
+
+ <div id="select-panel-47881ee0-76f5-40de-a6a4-60e27aa106aa-list" aria-disabled="true" aria-busy="true" data-view-component="true" class="SelectPanel-loadingPanel mt-2 mb-2 d-flex flex-items-start flex-justify-center text-center">
+ <div data-hide-on-error="" class="pt-2">
+ <span data-target="select-panel.bodySpinner" data-view-component="true">
+ <svg aria-label="Loading content..." style="box-sizing: content-box; color: var(--color-icon-primary);" width="32" height="32" viewBox="0 0 16 16" fill="none" role="img" data-view-component="true" class="anim-rotate">
+ <circle cx="8" cy="8" r="7" stroke="currentColor" stroke-opacity="0.25" stroke-width="2" vector-effect="non-scaling-stroke" fill="none"></circle>
+ <path d="M15 8a7.002 7.002 0 00-7-7" stroke="currentColor" stroke-width="2" stroke-linecap="round" vector-effect="non-scaling-stroke"></path>
+</svg></span>
+ </div>
+ <div data-show-on-error="" hidden="" data-target="select-panel.fragmentErrorElement">
+ <div class="pt-2 pb-2">
+ <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-alert color-fg-danger">
+ <path d="M6.457 1.047c.659-1.234 2.427-1.234 3.086 0l6.082 11.378A1.75 1.75 0 0 1 14.082 15H1.918a1.75 1.75 0 0 1-1.543-2.575Zm1.763.707a.25.25 0 0 0-.44 0L1.698 13.132a.25.25 0 0 0 .22.368h12.164a.25.25 0 0 0 .22-.368Zm.53 3.996v2.5a.75.75 0 0 1-1.5 0v-2.5a.75.75 0 0 1 1.5 0ZM9 11a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z"></path>
+</svg>
+ <h2 class="f5 mt-2">Sorry, something went wrong.</h2>
+ </div>
+ </div>
+</div>
+ <div data-show-on-forbidden-error="" hidden="">
+ <div class="Box">
+ <div class="blankslate-container">
+ <div data-view-component="true" class="blankslate blankslate-spacious color-bg-default rounded-2">
+
+
+ <h3 data-view-component="true" class="blankslate-heading"> Uh oh!
+</h3>
+ <p data-view-component="true" class="blankslate-description"> </p><p class="color-fg-muted my-2 mb-2 ws-normal">There was an error while loading. <a class="Link--inTextBlock" data-turbo="false" href="https://github.com/hyprwm/Hyprland/releases/tag/v0.54.0" aria-label="Please reload this page" data-turbo-frame="repo-content-turbo-frame">Please reload this page</a>.</p>
+<p></p>
+
+</div> </div>
+</div> </div>
+</include-fragment> </div>
+ <div data-target="select-panel.noResults" class="SelectPanel-emptyPanel" hidden="">
+ <h2 class="v-align-middle m-3 f5">No results found</h2>
+ </div>
+</div> </focus-group>
+</div> <div data-view-component="true" class="Overlay-footer Overlay-footer--alignEnd Overlay-footer--divided"> <div class="text-center width-full">
+ <a href="https://github.com/hyprwm/Hyprland/tags" data-turbo-frame="repo-content-turbo-frame">View all tags</a>
+ </div>
+</div>
+</dialog> </dialog-helper>
+</select-panel>
+
+ </div>
+</div>
+
+ <div class="tmp-mb-3 tmp-pb-md-4 border-md-bottom" data-pjax="#repo-content-pjax-container" data-turbo-frame="repo-content-turbo-frame">
+ <div class="d-flex flex-row flex-wrap color-fg-muted flex-items-end">
+ <div class="tmp-mr-4 mb-2">
+ <img src="./Release v0.54.0 · hyprwm_Hyprland_files/43317083" alt="@vaxerski" size="20" height="20" width="20" data-view-component="true" class="avatar avatar-small circle">
+ <a class="text-bold color-fg-muted" data-hovercard-type="user" data-hovercard-url="/users/vaxerski/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/vaxerski" aria-keyshortcuts="Alt+ArrowUp" data-turbo-frame="repo-content-turbo-frame">vaxerski</a>
+
+ released this
+
+ <relative-time class="no-wrap" prefix="" datetime="2026-02-27T18:23:50Z" title="Feb 27, 2026, 12:23 PM CST"><template shadowrootmode="open">last week</template>
+ 27 Feb 18:23
+ </relative-time>
+ </div>
+
+
+ <div class="tmp-mr-4 mb-2">
+ ·
+ <a href="https://github.com/hyprwm/Hyprland/compare/v0.54.0...main" data-turbo-frame="repo-content-turbo-frame">
+ 66 commits
+ </a>
+ to main
+ since this release
+ </div>
+
+
+ <div class="tmp-mr-4 mb-2">
+ <a href="https://github.com/hyprwm/Hyprland/tree/v0.54.0" data-view-component="true" class="Link Link--muted" data-turbo-frame="repo-content-turbo-frame"><span data-view-component="true" class="css-truncate css-truncate-target">
+ <svg aria-label="Tag" role="img" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-tag">
+ <path d="M1 7.775V2.75C1 1.784 1.784 1 2.75 1h5.025c.464 0 .91.184 1.238.513l6.25 6.25a1.75 1.75 0 0 1 0 2.474l-5.026 5.026a1.75 1.75 0 0 1-2.474 0l-6.25-6.25A1.752 1.752 0 0 1 1 7.775Zm1.5 0c0 .066.026.13.073.177l6.25 6.25a.25.25 0 0 0 .354 0l5.025-5.025a.25.25 0 0 0 0-.354l-6.25-6.25a.25.25 0 0 0-.177-.073H2.75a.25.25 0 0 0-.25.25ZM6 5a1 1 0 1 1 0 2 1 1 0 0 1 0-2Z"></path>
+</svg>
+ <span class="ml-1">
+ v0.54.0
+ </span>
+</span></a>
+ </div>
+ <div class="tmp-mr-4 mb-2" style="position: relative; top: 1px;">
+ <a data-hovercard-type="commit" data-hovercard-url="/hyprwm/Hyprland/commit/0002f148c9a4fe421a9d33c0faa5528cdc411e62/hovercard" href="https://github.com/hyprwm/Hyprland/commit/0002f148c9a4fe421a9d33c0faa5528cdc411e62" data-view-component="true" class="Link Link--muted" aria-keyshortcuts="Alt+ArrowUp" data-turbo-frame="repo-content-turbo-frame"><svg aria-label="Commit" role="img" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-git-commit">
+ <path d="M11.93 8.5a4.002 4.002 0 0 1-7.86 0H.75a.75.75 0 0 1 0-1.5h3.32a4.002 4.002 0 0 1 7.86 0h3.32a.75.75 0 0 1 0 1.5Zm-1.43-.75a2.5 2.5 0 1 0-5 0 2.5 2.5 0 0 0 5 0Z"></path>
+</svg>
+ <code class="f5 ml-1">0002f14</code></a> <details class="dropdown dropdown-signed-commit details-reset details-overlay js-dropdown-details d-inline-block ml-1">
+ <summary class="color-fg-success">
+ <svg aria-label="Verified commit signature" role="img" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-verified">
+ <path d="m9.585.52.929.68c.153.112.331.186.518.215l1.138.175a2.678 2.678 0 0 1 2.24 2.24l.174 1.139c.029.187.103.365.215.518l.68.928a2.677 2.677 0 0 1 0 3.17l-.68.928a1.174 1.174 0 0 0-.215.518l-.175 1.138a2.678 2.678 0 0 1-2.241 2.241l-1.138.175a1.17 1.17 0 0 0-.518.215l-.928.68a2.677 2.677 0 0 1-3.17 0l-.928-.68a1.174 1.174 0 0 0-.518-.215L3.83 14.41a2.678 2.678 0 0 1-2.24-2.24l-.175-1.138a1.17 1.17 0 0 0-.215-.518l-.68-.928a2.677 2.677 0 0 1 0-3.17l.68-.928c.112-.153.186-.331.215-.518l.175-1.14a2.678 2.678 0 0 1 2.24-2.24l1.139-.175c.187-.029.365-.103.518-.215l.928-.68a2.677 2.677 0 0 1 3.17 0ZM7.303 1.728l-.927.68a2.67 2.67 0 0 1-1.18.489l-1.137.174a1.179 1.179 0 0 0-.987.987l-.174 1.136a2.677 2.677 0 0 1-.489 1.18l-.68.928a1.18 1.18 0 0 0 0 1.394l.68.927c.256.348.424.753.489 1.18l.174 1.137c.078.509.478.909.987.987l1.136.174a2.67 2.67 0 0 1 1.18.489l.928.68c.414.305.979.305 1.394 0l.927-.68a2.67 2.67 0 0 1 1.18-.489l1.137-.174a1.18 1.18 0 0 0 .987-.987l.174-1.136a2.67 2.67 0 0 1 .489-1.18l.68-.928a1.176 1.176 0 0 0 0-1.394l-.68-.927a2.686 2.686 0 0 1-.489-1.18l-.174-1.137a1.179 1.179 0 0 0-.987-.987l-1.136-.174a2.677 2.677 0 0 1-1.18-.489l-.928-.68a1.176 1.176 0 0 0-1.394 0ZM11.28 6.78l-3.75 3.75a.75.75 0 0 1-1.06 0L4.72 8.78a.751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018L7 8.94l3.22-3.22a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042Z"></path>
+</svg>
+ </summary>
+
+ <div class="anim-scale-in" style="position: relative; z-index: 200;">
+ <div class="dropdown-menu dropdown-menu-s py-0 color-fg-default text-left">
+
+ <div class="tmp-p-3 signed-commit-header d-flex">
+ <div class="pr-1">
+ <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-verified mr-2">
+ <path d="m9.585.52.929.68c.153.112.331.186.518.215l1.138.175a2.678 2.678 0 0 1 2.24 2.24l.174 1.139c.029.187.103.365.215.518l.68.928a2.677 2.677 0 0 1 0 3.17l-.68.928a1.174 1.174 0 0 0-.215.518l-.175 1.138a2.678 2.678 0 0 1-2.241 2.241l-1.138.175a1.17 1.17 0 0 0-.518.215l-.928.68a2.677 2.677 0 0 1-3.17 0l-.928-.68a1.174 1.174 0 0 0-.518-.215L3.83 14.41a2.678 2.678 0 0 1-2.24-2.24l-.175-1.138a1.17 1.17 0 0 0-.215-.518l-.68-.928a2.677 2.677 0 0 1 0-3.17l.68-.928c.112-.153.186-.331.215-.518l.175-1.14a2.678 2.678 0 0 1 2.24-2.24l1.139-.175c.187-.029.365-.103.518-.215l.928-.68a2.677 2.677 0 0 1 3.17 0ZM7.303 1.728l-.927.68a2.67 2.67 0 0 1-1.18.489l-1.137.174a1.179 1.179 0 0 0-.987.987l-.174 1.136a2.677 2.677 0 0 1-.489 1.18l-.68.928a1.18 1.18 0 0 0 0 1.394l.68.927c.256.348.424.753.489 1.18l.174 1.137c.078.509.478.909.987.987l1.136.174a2.67 2.67 0 0 1 1.18.489l.928.68c.414.305.979.305 1.394 0l.927-.68a2.67 2.67 0 0 1 1.18-.489l1.137-.174a1.18 1.18 0 0 0 .987-.987l.174-1.136a2.67 2.67 0 0 1 .489-1.18l.68-.928a1.176 1.176 0 0 0 0-1.394l-.68-.927a2.686 2.686 0 0 1-.489-1.18l-.174-1.137a1.179 1.179 0 0 0-.987-.987l-1.136-.174a2.677 2.677 0 0 1-1.18-.489l-.928-.68a1.176 1.176 0 0 0-1.394 0ZM11.28 6.78l-3.75 3.75a.75.75 0 0 1-1.06 0L4.72 8.78a.751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018L7 8.94l3.22-3.22a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042Z"></path>
+</svg>
+ </div>
+ <div class="flex-1">
+ This commit was signed with the committer’s <strong>verified signature</strong>.
+ </div>
+ </div>
+
+ <div class="tmp-px-3 tmp-pt-3 d-flex">
+ <a class="pr-1" aria-label="vaxerski" href="https://github.com/vaxerski" data-turbo-frame="repo-content-turbo-frame">
+ <img src="./Release v0.54.0 · hyprwm_Hyprland_files/43317083(1)" alt="" class="avatar avatar-2 avatar-user mr-2">
+ </a>
+ <span class="signed-commit-signer-name flex-1">
+ <a class="signer" href="https://github.com/vaxerski" data-turbo-frame="repo-content-turbo-frame">vaxerski</a>
+ Vaxry
+ </span>
+ </div>
+
+ <div class="signed-commit-footer tmp-p-3 rounded-bottom-2">
+ <span class="d-block">GPG key ID: <span class="color-fg-muted">665806380871D640</span></span>
+ <div class="my-1">
+ </div>
+ <div>Verified
+ <relative-time datetime="2026-02-27 12:03:23 -0600" threshold="PT0S" year="numeric" hour="2-digit" minute="2-digit" title="Feb 27, 2026, 12:03 PM CST"><template shadowrootmode="open">on Feb 27, 2026, 12:03 PM</template></relative-time>
+ </div>
+ <a class="Link--inTextBlock" href="https://docs.github.com/github/authenticating-to-github/displaying-verification-statuses-for-all-of-your-commits" data-turbo-frame="repo-content-turbo-frame">Learn about vigilant mode</a>.
+ </div>
+ </div>
+ </div>
+</details>
+
+ </div>
+
+</div>
+ </div>
+ <div data-pjax="true" data-test-selector="body-content" data-view-component="true" class="markdown-body tmp-my-3"><p>A big (large), actually huge update for y'all!!</p>
+<p>Special thanks to our HIs (Human Intelligences) for powering Hyprland development.</p>
+<h2>Breaking changes</h2>
+<ul>
+<li><code>togglesplit</code> and <code>swapsplit</code> have been removed after being long deprecated. Use <code>layoutmsg</code> with the same params instead.</li>
+<li><code>single_window_aspect_ratio</code> and <code>single_window_aspect_ratio_tolerance</code> have been migrated from dwindle to layout, and are layout-agnostic</li>
+</ul>
+<h2>New features:</h2>
+<ul>
+<li>cmakelists: add fno-omit-frame-pointer for tracy builds</li>
+<li>desktop/window: add stable id and use it for foreign</li>
+<li>gestures: add cursor zoom (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3831617206" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/13033" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/13033/hovercard" href="https://github.com/hyprwm/Hyprland/pull/13033" aria-keyshortcuts="Alt+ArrowUp">#13033</a>)</li>
+<li>groupbar: added group:groupbar:text_padding (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3777138827" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/12818" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/12818/hovercard" href="https://github.com/hyprwm/Hyprland/pull/12818" aria-keyshortcuts="Alt+ArrowUp">#12818</a>)</li>
+<li>hyprctl: add error messages to hyprctl hyprpaper wallpaper (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3920709365" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/13234" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/13234/hovercard" href="https://github.com/hyprwm/Hyprland/pull/13234" aria-keyshortcuts="Alt+ArrowUp">#13234</a>)</li>
+<li>hyprctl: add overFullscreen field in hyprctl window debug (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3847107603" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/13066" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/13066/hovercard" href="https://github.com/hyprwm/Hyprland/pull/13066" aria-keyshortcuts="Alt+ArrowUp">#13066</a>)</li>
+<li>hyprpm: add full nix integration (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3896346923" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/13189" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/13189/hovercard" href="https://github.com/hyprwm/Hyprland/pull/13189" aria-keyshortcuts="Alt+ArrowUp">#13189</a>)</li>
+<li>keybinds: add inhibiting gestures under shortcut inhibitors (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3750643074" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/12692" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/12692/hovercard" href="https://github.com/hyprwm/Hyprland/pull/12692" aria-keyshortcuts="Alt+ArrowUp">#12692</a>)</li>
+<li>main: add watchdog-fd and safe-mode options to help message (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3793458802" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/12922" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/12922/hovercard" href="https://github.com/hyprwm/Hyprland/pull/12922" aria-keyshortcuts="Alt+ArrowUp">#12922</a>)</li>
+<li>opengl: add debug:gl_debugging (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3888028545" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/13183" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/13183/hovercard" href="https://github.com/hyprwm/Hyprland/pull/13183" aria-keyshortcuts="Alt+ArrowUp">#13183</a>)</li>
+<li>start: add --force-nixgl and check /run/opengl-driver (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4000414960" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/13385" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/13385/hovercard" href="https://github.com/hyprwm/Hyprland/pull/13385" aria-keyshortcuts="Alt+ArrowUp">#13385</a>)</li>
+<li>start: add parent-death handling for BSDs (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3781371283" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/12863" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/12863/hovercard" href="https://github.com/hyprwm/Hyprland/pull/12863" aria-keyshortcuts="Alt+ArrowUp">#12863</a>)</li>
+</ul>
+<h2>Fixes:</h2>
+<ul>
+<li>algo/dwindle: fix focal point not being properly used in movedTarget (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3992471354" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/13373" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/13373/hovercard" href="https://github.com/hyprwm/Hyprland/pull/13373" aria-keyshortcuts="Alt+ArrowUp">#13373</a>)</li>
+<li>algo/master: fix master:orientation being a noop</li>
+<li>algo/master: fix orientation cycling (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3992285048" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/13372" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/13372/hovercard" href="https://github.com/hyprwm/Hyprland/pull/13372" aria-keyshortcuts="Alt+ArrowUp">#13372</a>)</li>
+<li>algo/scrolling: fix crashes on destroying ws</li>
+<li>core/compositor: immediately do readable if adding waiter fails for scheduling state</li>
+<li>compositor: fix calculating x11 work area (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3979033050" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/13347" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/13347/hovercard" href="https://github.com/hyprwm/Hyprland/pull/13347" aria-keyshortcuts="Alt+ArrowUp">#13347</a>)</li>
+<li>config/descriptions: fix use_cpu_buffer (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3945616571" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/13285" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/13285/hovercard" href="https://github.com/hyprwm/Hyprland/pull/13285" aria-keyshortcuts="Alt+ArrowUp">#13285</a>)</li>
+<li>core/xwaylandmgr: fix min/max clamp potentially crashing</li>
+<li>decorations/border: fix damage scheduling after <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3735665901" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/12665" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/12665/hovercard" href="https://github.com/hyprwm/Hyprland/pull/12665" aria-keyshortcuts="Alt+ArrowUp">#12665</a></li>
+<li>desktop/layerRuleApplicator: fix an epic c+p fail</li>
+<li>desktop/ls: fix invalid clamp</li>
+<li>desktop/popup: fix use after free in Popup (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3975945523" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/13335" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/13335/hovercard" href="https://github.com/hyprwm/Hyprland/pull/13335" aria-keyshortcuts="Alt+ArrowUp">#13335</a>)</li>
+<li>desktop/reserved: fix a possible reserved crash (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3907601202" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/13207" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/13207/hovercard" href="https://github.com/hyprwm/Hyprland/pull/13207" aria-keyshortcuts="Alt+ArrowUp">#13207</a>)</li>
+<li>desktop/ruleApplicator: fix typo in border color rule parsing (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3818223580" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/12995" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/12995/hovercard" href="https://github.com/hyprwm/Hyprland/pull/12995" aria-keyshortcuts="Alt+ArrowUp">#12995</a>)</li>
+<li>desktop/rules: fix border colors not resetting. (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3997694170" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/13382" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/13382/hovercard" href="https://github.com/hyprwm/Hyprland/pull/13382" aria-keyshortcuts="Alt+ArrowUp">#13382</a>)</li>
+<li>desktop/workspaceHistory: fix tracking for multiple monitors (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3809893867" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/12979" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/12979/hovercard" href="https://github.com/hyprwm/Hyprland/pull/12979" aria-keyshortcuts="Alt+ArrowUp">#12979</a>)</li>
+<li>desktopAnimationMgr: fix slide direction</li>
+<li>dynamicPermManager: fix c+p fail</li>
+<li>eventLoop: various eventloopmgr fixes (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3853713133" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/13091" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/13091/hovercard" href="https://github.com/hyprwm/Hyprland/pull/13091" aria-keyshortcuts="Alt+ArrowUp">#13091</a>)</li>
+<li>example: fixup config for togglesplit</li>
+<li>fifo: miscellaneous fifo fixes (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3873026538" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/13136" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/13136/hovercard" href="https://github.com/hyprwm/Hyprland/pull/13136" aria-keyshortcuts="Alt+ArrowUp">#13136</a>)</li>
+<li>fix: handle fullscreen windows on special workspaces (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3779778715" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/12851" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/12851/hovercard" href="https://github.com/hyprwm/Hyprland/pull/12851" aria-keyshortcuts="Alt+ArrowUp">#12851</a>)</li>
+<li>hyprctl: fix layerrules not being applied dynamically with hyprctl (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3851969440" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/13080" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/13080/hovercard" href="https://github.com/hyprwm/Hyprland/pull/13080" aria-keyshortcuts="Alt+ArrowUp">#13080</a>)</li>
+<li>hyprerror: add padding &amp; adjust for scale when reserving area (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3878813280" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/13158" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/13158/hovercard" href="https://github.com/hyprwm/Hyprland/pull/13158" aria-keyshortcuts="Alt+ArrowUp">#13158</a>)</li>
+<li>hyprerror: fix horizontal overflow and damage box (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3762114361" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/12719" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/12719/hovercard" href="https://github.com/hyprwm/Hyprland/pull/12719" aria-keyshortcuts="Alt+ArrowUp">#12719</a>)</li>
+<li>hyprpm: fix build step execution</li>
+<li>hyprpm: fix clang-format</li>
+<li>input: fix edge grab resize logic for gaps_out &gt; 0 (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3875693231" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/13144" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/13144/hovercard" href="https://github.com/hyprwm/Hyprland/pull/13144" aria-keyshortcuts="Alt+ArrowUp">#13144</a>)</li>
+<li>input: fix kinetic scroll (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3919284998" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/13233" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/13233/hovercard" href="https://github.com/hyprwm/Hyprland/pull/13233" aria-keyshortcuts="Alt+ArrowUp">#13233</a>)</li>
+<li>keybinds: fix unguarded member access in moveWindowOrGroup (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3976196724" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/13337" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/13337/hovercard" href="https://github.com/hyprwm/Hyprland/pull/13337" aria-keyshortcuts="Alt+ArrowUp">#13337</a>)</li>
+<li>mainLoopExecutor: fix incorrect pipe check</li>
+<li>monitor: fix DS deactivation (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3896206204" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/13188" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/13188/hovercard" href="https://github.com/hyprwm/Hyprland/pull/13188" aria-keyshortcuts="Alt+ArrowUp">#13188</a>)</li>
+<li>multigpu: fix multi gpu checking (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3942479773" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/13277" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/13277/hovercard" href="https://github.com/hyprwm/Hyprland/pull/13277" aria-keyshortcuts="Alt+ArrowUp">#13277</a>)</li>
+<li>nix: add hyprland-uwsm to passthru.providedSessions</li>
+<li>nix: fix evaluation warnings, the xorg package set has been deprecated (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3917864005" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/13231" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/13231/hovercard" href="https://github.com/hyprwm/Hyprland/pull/13231" aria-keyshortcuts="Alt+ArrowUp">#13231</a>)</li>
+<li>pluginsystem: fix crash when unloading plugin hyprctl commands (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3777492940" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/12821" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/12821/hovercard" href="https://github.com/hyprwm/Hyprland/pull/12821" aria-keyshortcuts="Alt+ArrowUp">#12821</a>)</li>
+<li>protocols/cm: Fix image description info events (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3772415203" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/12781" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/12781/hovercard" href="https://github.com/hyprwm/Hyprland/pull/12781" aria-keyshortcuts="Alt+ArrowUp">#12781</a>)</li>
+<li>protocols/contentType: fix missing destroy</li>
+<li>protocols/contentType: fix typo in already constructed check</li>
+<li>protocols/dmabuf: fix DMA-BUF checks and events (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3801957164" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/12965" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/12965/hovercard" href="https://github.com/hyprwm/Hyprland/pull/12965" aria-keyshortcuts="Alt+ArrowUp">#12965</a>)</li>
+<li>protocols/syncobj: fix DRM sync obj support logging (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3800141385" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/12946" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/12946/hovercard" href="https://github.com/hyprwm/Hyprland/pull/12946" aria-keyshortcuts="Alt+ArrowUp">#12946</a>)</li>
+<li>renderer/pass: fix surface opaque region bounds used in occluding (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3868665718" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/13124" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/13124/hovercard" href="https://github.com/hyprwm/Hyprland/pull/13124" aria-keyshortcuts="Alt+ArrowUp">#13124</a>)</li>
+<li>renderer: add surface shader variants with less branching and uniforms (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3830716833" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/13030" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/13030/hovercard" href="https://github.com/hyprwm/Hyprland/pull/13030" aria-keyshortcuts="Alt+ArrowUp">#13030</a>)</li>
+<li>renderer: optimise shader usage further, split shaders and add more caching (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3816686041" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/12992" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/12992/hovercard" href="https://github.com/hyprwm/Hyprland/pull/12992" aria-keyshortcuts="Alt+ArrowUp">#12992</a>)</li>
+<li>renderer: fix dgpu directscanout explicit sync (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3915331773" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/13229" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/13229/hovercard" href="https://github.com/hyprwm/Hyprland/pull/13229" aria-keyshortcuts="Alt+ArrowUp">#13229</a>)</li>
+<li>renderer: fix frame sync (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3842824765" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/13061" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/13061/hovercard" href="https://github.com/hyprwm/Hyprland/pull/13061" aria-keyshortcuts="Alt+ArrowUp">#13061</a>)</li>
+<li>renderer: fix mouse motion in VRR (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3735665901" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/12665" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/12665/hovercard" href="https://github.com/hyprwm/Hyprland/pull/12665" aria-keyshortcuts="Alt+ArrowUp">#12665</a>)</li>
+<li>renderer: fix non shader cm reset (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3829260005" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/13027" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/13027/hovercard" href="https://github.com/hyprwm/Hyprland/pull/13027" aria-keyshortcuts="Alt+ArrowUp">#13027</a>)</li>
+<li>renderer: fix screen export back to srgb (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3875809833" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/13148" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/13148/hovercard" href="https://github.com/hyprwm/Hyprland/pull/13148" aria-keyshortcuts="Alt+ArrowUp">#13148</a>)</li>
+<li>systemd/sdDaemon: fix incorrect strnlen</li>
+<li>target: fix geometry for x11 floats</li>
+<li>tester: fix sleeps waiting for too long (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3771672606" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/12774" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/12774/hovercard" href="https://github.com/hyprwm/Hyprland/pull/12774" aria-keyshortcuts="Alt+ArrowUp">#12774</a>)</li>
+<li>xwayland/xwm: fix _NET_WM_STATE_MAXIMIZED_VERT type (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3876397761" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/13151" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/13151/hovercard" href="https://github.com/hyprwm/Hyprland/pull/13151" aria-keyshortcuts="Alt+ArrowUp">#13151</a>)</li>
+<li>xwayland/xwm: fix window closing when props race</li>
+<li>xwayland: fix size mismatch for no scaling (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3936437812" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/13263" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/13263/hovercard" href="https://github.com/hyprwm/Hyprland/pull/13263" aria-keyshortcuts="Alt+ArrowUp">#13263</a>)</li>
+</ul>
+<h2>Other:</h2>
+<ul>
+<li>Nix: apply glaze patch</li>
+<li>Nix: re-enable hyprpm</li>
+<li>Reapply "hyprpm: bump glaze version"</li>
+<li>Revert "hyprpm: bump glaze version"</li>
+<li>algo/scrolling: adjust focus callbacks to be more intuitive</li>
+<li>animation: reset tick state on session activation (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3828050119" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/13024" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/13024/hovercard" href="https://github.com/hyprwm/Hyprland/pull/13024" aria-keyshortcuts="Alt+ArrowUp">#13024</a>)</li>
+<li>animationMgr: avoid uaf in ::tick() if handleUpdate destroys AV</li>
+<li>anr: open anr dialog on parent's workspace (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3677007321" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/12509" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/12509/hovercard" href="https://github.com/hyprwm/Hyprland/pull/12509" aria-keyshortcuts="Alt+ArrowUp">#12509</a>)</li>
+<li>anr: remove window on closewindow (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3824070513" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/13007" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/13007/hovercard" href="https://github.com/hyprwm/Hyprland/pull/13007" aria-keyshortcuts="Alt+ArrowUp">#13007</a>)</li>
+<li>buffer: add move constructor and operator to CHLBufferReference (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3878650582" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/13157" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/13157/hovercard" href="https://github.com/hyprwm/Hyprland/pull/13157" aria-keyshortcuts="Alt+ArrowUp">#13157</a>)</li>
+<li>cm: block DS for scRGB in HDR mode (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3935400848" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/13262" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/13262/hovercard" href="https://github.com/hyprwm/Hyprland/pull/13262" aria-keyshortcuts="Alt+ArrowUp">#13262</a>)</li>
+<li>cmake: bump wayland-server version to 1.22.91 (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3923416221" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/13242" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/13242/hovercard" href="https://github.com/hyprwm/Hyprland/pull/13242" aria-keyshortcuts="Alt+ArrowUp">#13242</a>)</li>
+<li>cmake: use OpenGL::GLES3 when OpenGL::GL does not exist (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3934677515" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/13260" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/13260/hovercard" href="https://github.com/hyprwm/Hyprland/pull/13260" aria-keyshortcuts="Alt+ArrowUp">#13260</a>)</li>
+<li>cmakelists: don't require debug for tracy</li>
+<li>compositor: guard null view() in getWindowFromSurface (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3930272517" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/13255" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/13255/hovercard" href="https://github.com/hyprwm/Hyprland/pull/13255" aria-keyshortcuts="Alt+ArrowUp">#13255</a>)</li>
+<li>config: don't crash on permission with a config check</li>
+<li>config: return windowrulev2 layerrulev2 error messages (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3779549933" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/12847" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/12847/hovercard" href="https://github.com/hyprwm/Hyprland/pull/12847" aria-keyshortcuts="Alt+ArrowUp">#12847</a>)</li>
+<li>config: support no_vrr rule on vrr 1 (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3928417236" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/13250" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/13250/hovercard" href="https://github.com/hyprwm/Hyprland/pull/13250" aria-keyshortcuts="Alt+ArrowUp">#13250</a>)</li>
+<li>core: optimize some common branches</li>
+<li>decoration: take desiredExtents on all sides into account (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3798776653" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/12935" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/12935/hovercard" href="https://github.com/hyprwm/Hyprland/pull/12935" aria-keyshortcuts="Alt+ArrowUp">#12935</a>)</li>
+<li>dekstop/window: read static rules before guessing initial size if possible (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3772727094" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/12783" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/12783/hovercard" href="https://github.com/hyprwm/Hyprland/pull/12783" aria-keyshortcuts="Alt+ArrowUp">#12783</a>)</li>
+<li>desktop/LS: avoid creating an invalid LS if no monitor could be found (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3772918717" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/12787" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/12787/hovercard" href="https://github.com/hyprwm/Hyprland/pull/12787" aria-keyshortcuts="Alt+ArrowUp">#12787</a>)</li>
+<li>desktop/ls: clamp layer from protocol</li>
+<li>desktop/popup: avoid crash on null popup child in rechecking</li>
+<li>desktop/popup: only remove reserved for window popups</li>
+<li>desktop/reservedArea: clamp dynamic types to 0</li>
+<li>desktop/reservedArea: clamp to 0</li>
+<li>desktop/rules: use pid for exec rules (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3992519229" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/13374" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/13374/hovercard" href="https://github.com/hyprwm/Hyprland/pull/13374" aria-keyshortcuts="Alt+ArrowUp">#13374</a>)</li>
+<li>desktop/window: avoid uaf on instant removal of a window</li>
+<li>desktop/window: catch bad any cast tokens</li>
+<li>desktop/window: go back to the previously focused window in a group (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3770236468" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/12763" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/12763/hovercard" href="https://github.com/hyprwm/Hyprland/pull/12763" aria-keyshortcuts="Alt+ArrowUp">#12763</a>)</li>
+<li>desktop/window: remove old fn defs</li>
+<li>desktop/window: track explicit workspace assignments to prevent X11 configure overwrites (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3779627509" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/12850" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/12850/hovercard" href="https://github.com/hyprwm/Hyprland/pull/12850" aria-keyshortcuts="Alt+ArrowUp">#12850</a>)</li>
+<li>desktop/window: use workArea for idealBB (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3774783043" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/12802" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/12802/hovercard" href="https://github.com/hyprwm/Hyprland/pull/12802" aria-keyshortcuts="Alt+ArrowUp">#12802</a>)</li>
+<li>desktop/windowRule: allow expression in min_size/max_size (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3809767850" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/12977" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/12977/hovercard" href="https://github.com/hyprwm/Hyprland/pull/12977" aria-keyshortcuts="Alt+ArrowUp">#12977</a>)</li>
+<li>desktop/windowRule: use content rule as enum directly (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3941416784" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/13275" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/13275/hovercard" href="https://github.com/hyprwm/Hyprland/pull/13275" aria-keyshortcuts="Alt+ArrowUp">#13275</a>)</li>
+<li>desktop: restore invisible floating window alpha/opacity when focused over fullscreen (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3817172365" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/12994" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/12994/hovercard" href="https://github.com/hyprwm/Hyprland/pull/12994" aria-keyshortcuts="Alt+ArrowUp">#12994</a>)</li>
+<li>event: refactor HookSystem into a typed event bus (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3975627063" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/13333" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/13333/hovercard" href="https://github.com/hyprwm/Hyprland/pull/13333" aria-keyshortcuts="Alt+ArrowUp">#13333</a>)</li>
+<li>eventLoop: remove failed readable waiters</li>
+<li>framebuffer: revert viewport (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3779000198" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/12842" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/12842/hovercard" href="https://github.com/hyprwm/Hyprland/pull/12842" aria-keyshortcuts="Alt+ArrowUp">#12842</a>)</li>
+<li>gestures/fs: remove unneeded floating state switch (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3870156220" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/13127" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/13127/hovercard" href="https://github.com/hyprwm/Hyprland/pull/13127" aria-keyshortcuts="Alt+ArrowUp">#13127</a>)</li>
+<li>hyprctl: adjust json case</li>
+<li>hyprctl: bump hyprpaper protocol to rev 2 (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3778481823" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/12838" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/12838/hovercard" href="https://github.com/hyprwm/Hyprland/pull/12838" aria-keyshortcuts="Alt+ArrowUp">#12838</a>)</li>
+<li>hyprctl: remove trailing comma from json object (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3833923630" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/13042" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/13042/hovercard" href="https://github.com/hyprwm/Hyprland/pull/13042" aria-keyshortcuts="Alt+ArrowUp">#13042</a>)</li>
+<li>hyprerror: clear reserved area on destroy (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3837984751" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/13046" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/13046/hovercard" href="https://github.com/hyprwm/Hyprland/pull/13046" aria-keyshortcuts="Alt+ArrowUp">#13046</a>)</li>
+<li>hyprpm,Makefile: drop cmake ninja build</li>
+<li>hyprpm: bump glaze version</li>
+<li>hyprpm: drop meson dep</li>
+<li>hyprpm: exclude glaze from all targets during fetch</li>
+<li>hyprpm: use provided pkgconf env if available</li>
+<li>i18n: add Romanian translations (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3851315614" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/13075" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/13075/hovercard" href="https://github.com/hyprwm/Hyprland/pull/13075" aria-keyshortcuts="Alt+ArrowUp">#13075</a>)</li>
+<li>i18n: add Traditional Chinese (zh_TW) translations (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3908915021" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/13210" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/13210/hovercard" href="https://github.com/hyprwm/Hyprland/pull/13210" aria-keyshortcuts="Alt+ArrowUp">#13210</a>)</li>
+<li>i18n: add Vietnamese translation (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3880688581" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/13163" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/13163/hovercard" href="https://github.com/hyprwm/Hyprland/pull/13163" aria-keyshortcuts="Alt+ArrowUp">#13163</a>)</li>
+<li>i18n: add bengali translations (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3891667453" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/13185" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/13185/hovercard" href="https://github.com/hyprwm/Hyprland/pull/13185" aria-keyshortcuts="Alt+ArrowUp">#13185</a>)</li>
+<li>i18n: update russian translation (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3927858709" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/13247" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/13247/hovercard" href="https://github.com/hyprwm/Hyprland/pull/13247" aria-keyshortcuts="Alt+ArrowUp">#13247</a>)</li>
+<li>input/TI: avoid UAF in destroy</li>
+<li>input/ti: avoid sending events to inactive TIs</li>
+<li>input: guard null <code>view()</code> when processing mouse down (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3771623678" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/12772" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/12772/hovercard" href="https://github.com/hyprwm/Hyprland/pull/12772" aria-keyshortcuts="Alt+ArrowUp">#12772</a>)</li>
+<li>input: use fresh cursor pos when sending motion events (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3991364672" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/13366" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/13366/hovercard" href="https://github.com/hyprwm/Hyprland/pull/13366" aria-keyshortcuts="Alt+ArrowUp">#13366</a>)</li>
+<li>internal: removed Herobrine</li>
+<li>layershell: restore focus to layer shell surface after popup is destroyed (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3913823392" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/13225" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/13225/hovercard" href="https://github.com/hyprwm/Hyprland/pull/13225" aria-keyshortcuts="Alt+ArrowUp">#13225</a>)</li>
+<li>layout: rethonk layouts from the ground up (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3786068406" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/12890" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/12890/hovercard" href="https://github.com/hyprwm/Hyprland/pull/12890" aria-keyshortcuts="Alt+ArrowUp">#12890</a>)</li>
+<li>monitor: revert "remove disconnected monitor before unsafe state <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3693792489" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/12544" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/12544/hovercard" href="https://github.com/hyprwm/Hyprland/pull/12544" aria-keyshortcuts="Alt+ArrowUp">#12544</a>" (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3877273094" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/13154" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/13154/hovercard" href="https://github.com/hyprwm/Hyprland/pull/13154" aria-keyshortcuts="Alt+ArrowUp">#13154</a>)</li>
+<li>nix: remove glaze patch</li>
+<li>opengl/fb: use GL_DEPTH24_STENCIL8 instead of GL_STENCIL_INDEX8 (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3847279058" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/13067" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/13067/hovercard" href="https://github.com/hyprwm/Hyprland/pull/13067" aria-keyshortcuts="Alt+ArrowUp">#13067</a>)</li>
+<li>opengl: allow texture filter to be changed (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3851788567" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/13078" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/13078/hovercard" href="https://github.com/hyprwm/Hyprland/pull/13078" aria-keyshortcuts="Alt+ArrowUp">#13078</a>)</li>
+<li>opengl: set EGL_CONTEXT_RELEASE_BEHAVIOR_KHR if supported (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3865065749" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/13114" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/13114/hovercard" href="https://github.com/hyprwm/Hyprland/pull/13114" aria-keyshortcuts="Alt+ArrowUp">#13114</a>)</li>
+<li>pointermgr: damage only the surface size (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3945534437" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/13284" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/13284/hovercard" href="https://github.com/hyprwm/Hyprland/pull/13284" aria-keyshortcuts="Alt+ArrowUp">#13284</a>)</li>
+<li>pointermgr: remove onRenderBufferDestroy (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3824285062" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/13008" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/13008/hovercard" href="https://github.com/hyprwm/Hyprland/pull/13008" aria-keyshortcuts="Alt+ArrowUp">#13008</a>)</li>
+<li>pointermgr: revert "damage only the surface size (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3945534437" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/13284" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/13284/hovercard" href="https://github.com/hyprwm/Hyprland/pull/13284" aria-keyshortcuts="Alt+ArrowUp">#13284</a>)"</li>
+<li>popup: check for expired weak ptr (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3981089898" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/13352" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/13352/hovercard" href="https://github.com/hyprwm/Hyprland/pull/13352" aria-keyshortcuts="Alt+ArrowUp">#13352</a>)</li>
+<li>popup: reposition with reserved taken into account</li>
+<li>proto/shm: update wl_shm to v2 (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3895631388" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/13187" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/13187/hovercard" href="https://github.com/hyprwm/Hyprland/pull/13187" aria-keyshortcuts="Alt+ArrowUp">#13187</a>)</li>
+<li>protocolMgr: remove IME / virtual input protocols from sandbox whitelist</li>
+<li>protocols/toplevelExport: Support transparency in toplevel export (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3777761778" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/12824" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/12824/hovercard" href="https://github.com/hyprwm/Hyprland/pull/12824" aria-keyshortcuts="Alt+ArrowUp">#12824</a>)</li>
+<li>protocols: implement image-capture-source-v1 and image-copy-capture-v1 (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3416672909" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/11709" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/11709/hovercard" href="https://github.com/hyprwm/Hyprland/pull/11709" aria-keyshortcuts="Alt+ArrowUp">#11709</a>)</li>
+<li>renderer/fb: dont forget to set m_drmFormat (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3778164091" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/12833" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/12833/hovercard" href="https://github.com/hyprwm/Hyprland/pull/12833" aria-keyshortcuts="Alt+ArrowUp">#12833</a>)</li>
+<li>renderer/gl: add internal gl formats and reduce internal driver format conversions (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3783030184" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/12879" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/12879/hovercard" href="https://github.com/hyprwm/Hyprland/pull/12879" aria-keyshortcuts="Alt+ArrowUp">#12879</a>)</li>
+<li>renderer/opengl: invalidate intermediate FBs post render, avoid stencil if possible (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3779555973" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/12848" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/12848/hovercard" href="https://github.com/hyprwm/Hyprland/pull/12848" aria-keyshortcuts="Alt+ArrowUp">#12848</a>)</li>
+<li>renderer: allow tearing with DS with invisible cursors (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3877315121" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/13155" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/13155/hovercard" href="https://github.com/hyprwm/Hyprland/pull/13155" aria-keyshortcuts="Alt+ArrowUp">#13155</a>)</li>
+<li>renderer: better sdr eotf settings (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3775709965" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/12812" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/12812/hovercard" href="https://github.com/hyprwm/Hyprland/pull/12812" aria-keyshortcuts="Alt+ArrowUp">#12812</a>)</li>
+<li>renderer: minor framebuffer and renderbuffer changes (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3778065507" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/12831" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/12831/hovercard" href="https://github.com/hyprwm/Hyprland/pull/12831" aria-keyshortcuts="Alt+ArrowUp">#12831</a>)</li>
+<li>renderer: shader code refactor (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3793700185" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/12926" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/12926/hovercard" href="https://github.com/hyprwm/Hyprland/pull/12926" aria-keyshortcuts="Alt+ArrowUp">#12926</a>)</li>
+<li>shm: ensure we use right gl unpack alignment (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3809075715" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/12975" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/12975/hovercard" href="https://github.com/hyprwm/Hyprland/pull/12975" aria-keyshortcuts="Alt+ArrowUp">#12975</a>)</li>
+<li>start: use nixGL if Hyprland is nix but not NixOS (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3779376151" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/12845" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/12845/hovercard" href="https://github.com/hyprwm/Hyprland/pull/12845" aria-keyshortcuts="Alt+ArrowUp">#12845</a>)</li>
+<li>systemd/sdDaemon: initialize sockaddr_un</li>
+<li>testers: add missing #include &lt;unistd.h&gt; (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3781359189" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/12862" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/12862/hovercard" href="https://github.com/hyprwm/Hyprland/pull/12862" aria-keyshortcuts="Alt+ArrowUp">#12862</a>)</li>
+<li>tests: Test the <code>no_focus_on_activate</code> window rule (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3826505657" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/13015" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/13015/hovercard" href="https://github.com/hyprwm/Hyprland/pull/13015" aria-keyshortcuts="Alt+ArrowUp">#13015</a>)</li>
+<li>time: ensure type correctness and calculate nsec correctly (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3881996933" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/13167" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/13167/hovercard" href="https://github.com/hyprwm/Hyprland/pull/13167" aria-keyshortcuts="Alt+ArrowUp">#13167</a>)</li>
+<li>versionKeeper: ignore minor rev version</li>
+<li>view: send wl_surface.enter to subsurfaces of popups (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3981092192" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/13353" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/13353/hovercard" href="https://github.com/hyprwm/Hyprland/pull/13353" aria-keyshortcuts="Alt+ArrowUp">#13353</a>)</li>
+<li>wayland/output: return all bound wl_output instances in outputResourceFrom (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3970355439" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/13315" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/13315/hovercard" href="https://github.com/hyprwm/Hyprland/pull/13315" aria-keyshortcuts="Alt+ArrowUp">#13315</a>)</li>
+<li>welcome: skip in safe mode</li>
+<li>xwayland/xwm: get supported props on constructing surface (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3877344107" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/13156" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/13156/hovercard" href="https://github.com/hyprwm/Hyprland/pull/13156" aria-keyshortcuts="Alt+ArrowUp">#13156</a>)</li>
+<li>xwayland/xwm: handle INCR clipboard transfer chunks correctly (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3869228938" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/13125" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/13125/hovercard" href="https://github.com/hyprwm/Hyprland/pull/13125" aria-keyshortcuts="Alt+ArrowUp">#13125</a>)</li>
+<li>xwayland/xwm: prevent onWrite infinite loop and clean orphan transfers (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3868364441" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/13122" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/13122/hovercard" href="https://github.com/hyprwm/Hyprland/pull/13122" aria-keyshortcuts="Alt+ArrowUp">#13122</a>)</li>
+<li>xwayland: ensure NO_XWAYLAND builds (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3879622305" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/13160" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/13160/hovercard" href="https://github.com/hyprwm/Hyprland/pull/13160" aria-keyshortcuts="Alt+ArrowUp">#13160</a>)</li>
+<li>xwayland: normalize OR geometry to logical coords with force_zero_scaling (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3988548983" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/13359" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/13359/hovercard" href="https://github.com/hyprwm/Hyprland/pull/13359" aria-keyshortcuts="Alt+ArrowUp">#13359</a>)</li>
+<li>xwayland: validate size hints before floating (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3989568329" data-permission-text="Title is private" data-url="https://github.com/hyprwm/Hyprland/issues/13361" data-hovercard-type="pull_request" data-hovercard-url="/hyprwm/Hyprland/pull/13361/hovercard" href="https://github.com/hyprwm/Hyprland/pull/13361" aria-keyshortcuts="Alt+ArrowUp">#13361</a>)</li>
+</ul>
+<h2>Special thanks</h2>
+<p>As always, massive thanks to our wonderful donators and sponsors:</p>
+<h3>Sponsors</h3>
+<h4>Diamond</h4>
+<p>37Signals</p>
+<h4>Gold</h4>
+<p>Framework</p>
+<h3>Donators</h3>
+<h4>Top Supporters:</h4>
+<p>Seishin, Kay, johndoe42, d, vmfunc, Theory_Lukas, --, MasterHowToLearn, iain, ari-cake, TyrHeimdal, alexmanman5, MadCatX, Xoores, inittux111, RaymondLC92, Insprill, John Shelburne, Illyan, Jas Singh, Joshua Weaver, miget.com, Tonao Paneguini, Brandon Wang, Arkevius, Semtex, Snorezor, ExBhal, alukortti, lzieniew, taigrr, 3RM, DHH, Hunter Wesson, Sierra Layla Vithica, soy_3l.beantser, Anon2033, Tom94</p>
+<h4>New Monthly Supporters:</h4>
+<p>monkeypost, lorenzhawkes, Adam Saudagar, Donovan Young, SpoderMouse, prafesa, b3st1m0s, CaptainShwah, Mozart409, bernd, dingo, Marc Galbraith, Mongoss, .tweep, x-wilk, Yngviwarr, moonshiner113, Dani Moreira, Nathan LeSueur, Chimal, edgarsilva, NachoAz, mo, McRealz, wrkshpstudio, crutonjohn</p>
+<h4>One-time Donators:</h4>
+<p>macsek, kxwm, Bex Jonathan, Alex, Tomas Kirkegaard, Viacheslav Demushkin, Clive, phil, luxxa, peterjs, tetamusha, pallavk, michaelsx, LichHunter, fratervital, Marpin, SxK, mglvsky, Pembo, Priyav Shah, ChazBeaver, Kim, JonGoogle, matt p, tim, ybaroj, Mr. Monet Baches, NoX, knurreleif, bosnaufal, Alex Vera, fathulk, nh3, Peter, Charles Silva, Tyvren, BI0L0G0S, fonte-della-bonitate, Alex Paterson, Ar, sK0pe, criss, Dnehring, Justin, hylk, 邱國玉KoryChiu, KSzykula, Loutci, jgarzadi, vladzapp, TonyDuan, Brian Starke, Jacobrale, Arvet, Jim C, frank2108, Bat-fox, M.Bergsprekken, sh-r0, Emmerich, davzucky, 3speed, 7KiLL, nu11p7r, Douglas Thomas, Ross, Dave Dashefsky, gignom, Androlax, Dakota, soup, Mac, Quiaro, bittersweet, earthian, Benedict Sonntag, Plockn, Palmen, SD, CyanideData, Spencer Flagg, davide, ashirsc, ddubs, dahol, C. Willard A.K.A Skubaaa, ddollar, Kelvin, Gwynspring, Richard, Zoltán, FirstKix, Zeux, CodeTex, shoedler, brk, Ben Damman, Nils Melchert, Ekoban, D., istoleyurballs , gaKz, ComputerPone, Cell the Führer, defaltastra, Vex, Bulletcharm, cosmincartas, Eccomi, vsa, YvesCB, mmsaf, JonathanHart, Sean Hogge, leat bear, Arizon, JohannesChristel, Darmock, Olivier, Mehran, Anon, Trevvvvvvvvvvvvvvvvvvvv, C8H10N4O2, BeNe, Ko-fi Supporter :3, brad, rzsombor, Faustian, Jemmer, Antonio Sanguigni, woozee, Bluudek, chonaldo, LP, Spanching, Armin, BarbaPeru, Rockey, soba, FalconOne, eizengan, むらびと, zanneth, 0xk1f0, Luccz, Shailesh Kanojia, ForgeWork , Richard Nunez, <a href="mailto:keith@groupdigital.com">keith@groupdigital.com</a>, pinklizzy, win_cat_define, Bill, johhnry, Matysek, anonymus, github.com/wh1le, Iiro Ullin, Filinto Delgado, badoken, Simon Brundin, Ethan, Theo Puranen Åhfeldt, PoorProgrammer, lukas0008, Paweł S, Vandroiy, Mathias Brännström, Happyelkk, zerocool823, Bryan, ralph_wiggums, DNA, skatos24, Darogirn , Hidde, phlay, lindolo25, Siege, Gus, Max, John Chukwuma, Loopy, Ben, PJ, mick, herakles, mikeU-1F45F, Ammanas, SeanGriffin, Artsiom, Erick, Marko, Ricky, Vincent mouline</p>
+<p><strong>Full Changelog</strong>: <a class="commit-link" href="https://github.com/hyprwm/Hyprland/compare/v0.53.0...v0.54.0"><tt>v0.53.0...v0.54.0</tt></a></p></div>
+</div>
+ <div data-view-component="true" class="Box-footer">
+ <div class="tmp-mb-3">
+ <details-toggle data-catalyst="">
+ <details open="open" data-target="details-toggle.detailsTarget" data-view-component="true">
+ <summary role="button" data-target="details-toggle.summaryTarget" data-action="click:details-toggle#toggle" aria-expanded="true" data-view-component="true"> <span class="d-inline-flex flex-items-center">
+ <span data-view-component="true" class="f3 text-bold ml-2 mr-2">Assets</span>
+ <span title="3" data-view-component="true" class="Counter">3</span>
+ </span>
+</summary>
+ <div data-view-component="true"> <include-fragment loading="lazy" src="https://github.com/hyprwm/Hyprland/releases/expanded_assets/v0.54.0" data-nonce="v2:20d102c3-9aa6-8fb8-b20f-17f6fa288bc7" data-view-component="true"><template shadowrootmode="open"><style>:host {display: block;}</style><slot></slot></template>
+
+ <span data-view-component="true">
+ <svg style="box-sizing: content-box; color: var(--color-icon-primary);" width="32" height="32" viewBox="0 0 16 16" fill="none" aria-hidden="true" data-view-component="true" class="anim-rotate">
+ <circle cx="8" cy="8" r="7" stroke="currentColor" stroke-opacity="0.25" stroke-width="2" vector-effect="non-scaling-stroke" fill="none"></circle>
+ <path d="M15 8a7.002 7.002 0 00-7-7" stroke="currentColor" stroke-width="2" stroke-linecap="round" vector-effect="non-scaling-stroke"></path>
+</svg> <span class="sr-only">Loading</span>
+</span>
+
+ <div data-show-on-forbidden-error="" hidden="">
+ <div class="Box">
+ <div class="blankslate-container">
+ <div data-view-component="true" class="blankslate blankslate-spacious color-bg-default rounded-2">
+
+
+ <h3 data-view-component="true" class="blankslate-heading"> Uh oh!
+</h3>
+ <p data-view-component="true" class="blankslate-description"> </p><p class="color-fg-muted my-2 mb-2 ws-normal">There was an error while loading. <a class="Link--inTextBlock" data-turbo="false" href="https://github.com/hyprwm/Hyprland/releases/tag/v0.54.0" aria-label="Please reload this page">Please reload this page</a>.</p>
+<p></p>
+
+</div> </div>
+</div> </div>
+</include-fragment></div>
+</details></details-toggle>
+
+ </div>
+
+
+ <div class="d-flex flex-row flex-wrap flex-justify-between js-comment">
+ <div data-view-component="true" class="comment-reactions js-reactions-container js-reaction-buttons-container social-reactions reactions-container has-reactions d-flex">
+ <reactions-menu tabindex="-1" data-catalyst="">
+ <details data-action="toggle:reactions-menu#focusFirstItem" data-target="reactions-menu.details" class="dropdown details-reset details-overlay d-inline-block new-reactions-dropdown js-reaction-popover-container js-comment-header-reaction-button">
+ <summary data-target="reactions-menu.summary" aria-label="Add or remove reactions" aria-haspopup="true" data-view-component="true" class="circle reaction-dropdown-button reaction-dropdown-button--inline btn-invisible btn p-0 mr-1 d-flex flex-justify-center flex-items-center color-bg-subtle border color-border-muted"> <svg height="18" aria-hidden="true" viewBox="0 0 16 16" version="1.1" width="18" data-view-component="true" class="octicon octicon-smiley social-button-emoji">
+ <path d="M8 0a8 8 0 1 1 0 16A8 8 0 0 1 8 0ZM1.5 8a6.5 6.5 0 1 0 13 0 6.5 6.5 0 0 0-13 0Zm3.82 1.636a.75.75 0 0 1 1.038.175l.007.009c.103.118.22.222.35.31.264.178.683.37 1.285.37.602 0 1.02-.192 1.285-.371.13-.088.247-.192.35-.31l.007-.008a.75.75 0 0 1 1.222.87l-.022-.015c.02.013.021.015.021.015v.001l-.001.002-.002.003-.005.007-.014.019a2.066 2.066 0 0 1-.184.213c-.16.166-.338.316-.53.445-.63.418-1.37.638-2.127.629-.946 0-1.652-.308-2.126-.63a3.331 3.331 0 0 1-.715-.657l-.014-.02-.005-.006-.002-.003v-.002h-.001l.613-.432-.614.43a.75.75 0 0 1 .183-1.044ZM12 7a1 1 0 1 1-2 0 1 1 0 0 1 2 0ZM5 8a1 1 0 1 1 0-2 1 1 0 0 1 0 2Zm5.25 2.25.592.416a97.71 97.71 0 0 0-.592-.416Z"></path>
+</svg>
+</summary> <!-- '"` --><!-- </textarea></xmp> --><form class="js-pick-reaction" data-turbo="false" action="https://github.com/hyprwm/Hyprland/reactions" accept-charset="UTF-8" method="post"><input type="hidden" name="_method" value="put" autocomplete="off"><input type="hidden" name="authenticity_token" value="TCietYQl9oR4Na3II_jL067u1w1GIztK5Vi7ph5IXBvRXiv7suxKO8AMXnktnJ-WH3NaM8E9ugUflZywE7GGcA" autocomplete="off">
+ <input type="hidden" name="input[subjectId]" value="RE_kwDOHA7HmM4RX2sU">
+ <ul class="dropdown-menu mt-2 d-flex mb-2 anim-scale-in dropdown-menu-reactions dropdown-menu-ne" role="menu">
+ <li role="presentation">
+ <button name="input[content]" id="reactions--reaction_button_component-b5581b" value="THUMBS_UP react" data-reaction-label="+1" data-reaction-content="+1" data-targets="reactions-menu.menuItems" role="menuitemcheckbox" aria-checked="false" aria-label="thumbs up" type="submit" data-view-component="true" class="dropdown-item dropdown-item-reaction btn-invisible btn d-flex no-underline color-fg-muted flex-justify-center flex-items-center rounded-2"> <g-emoji alias="+1" fallback-src="https://github.githubassets.com/assets/1f44d-41cb66fe1e22.png" class="d-flex"><img class="emoji" alt="+1" height="20" width="20" src="./Release v0.54.0 · hyprwm_Hyprland_files/1f44d-41cb66fe1e22.png"></g-emoji>
+</button> </li>
+ <li role="presentation">
+ <button name="input[content]" id="reactions--reaction_button_component-f6f581" value="LAUGH react" data-reaction-label="Laugh" data-reaction-content="smile" data-targets="reactions-menu.menuItems" role="menuitemcheckbox" aria-checked="false" aria-label="laugh" type="submit" data-view-component="true" class="dropdown-item dropdown-item-reaction btn-invisible btn d-flex no-underline color-fg-muted flex-justify-center flex-items-center rounded-2"> <g-emoji alias="smile" fallback-src="https://github.githubassets.com/assets/1f604-7528822fb4c5.png" class="d-flex"><img class="emoji" alt="smile" height="20" width="20" src="./Release v0.54.0 · hyprwm_Hyprland_files/1f604-7528822fb4c5.png"></g-emoji>
+</button> </li>
+ <li role="presentation">
+ <button name="input[content]" id="reactions--reaction_button_component-fd1bfe" value="HOORAY react" data-reaction-label="Hooray" data-reaction-content="tada" data-targets="reactions-menu.menuItems" role="menuitemcheckbox" aria-checked="false" aria-label="hooray" type="submit" data-view-component="true" class="dropdown-item dropdown-item-reaction btn-invisible btn d-flex no-underline color-fg-muted flex-justify-center flex-items-center rounded-2"> <g-emoji alias="tada" fallback-src="https://github.githubassets.com/assets/1f389-36899a2cb781.png" class="d-flex"><img class="emoji" alt="tada" height="20" width="20" src="./Release v0.54.0 · hyprwm_Hyprland_files/1f389-36899a2cb781.png"></g-emoji>
+</button> </li>
+ <li role="presentation">
+ <button name="input[content]" id="reactions--reaction_button_component-74cc00" value="HEART react" data-reaction-label="Heart" data-reaction-content="heart" data-targets="reactions-menu.menuItems" role="menuitemcheckbox" aria-checked="false" aria-label="heart" type="submit" data-view-component="true" class="dropdown-item dropdown-item-reaction btn-invisible btn d-flex no-underline color-fg-muted flex-justify-center flex-items-center rounded-2"> <g-emoji alias="heart" fallback-src="https://github.githubassets.com/assets/2764-982dc91ea48a.png" class="d-flex"><img class="emoji" alt="heart" height="20" width="20" src="./Release v0.54.0 · hyprwm_Hyprland_files/2764-982dc91ea48a.png"></g-emoji>
+</button> </li>
+ <li role="presentation">
+ <button name="input[content]" id="reactions--reaction_button_component-c470e5" value="ROCKET react" data-reaction-label="Rocket" data-reaction-content="rocket" data-targets="reactions-menu.menuItems" role="menuitemcheckbox" aria-checked="false" aria-label="rocket" type="submit" data-view-component="true" class="dropdown-item dropdown-item-reaction btn-invisible btn d-flex no-underline color-fg-muted flex-justify-center flex-items-center rounded-2"> <g-emoji alias="rocket" fallback-src="https://github.githubassets.com/assets/1f680-d0ef47fdb515.png" class="d-flex"><img class="emoji" alt="rocket" height="20" width="20" src="./Release v0.54.0 · hyprwm_Hyprland_files/1f680-d0ef47fdb515.png"></g-emoji>
+</button> </li>
+ <li role="presentation">
+ <button name="input[content]" id="reactions--reaction_button_component-50e483" value="EYES react" data-reaction-label="Eyes" data-reaction-content="eyes" data-targets="reactions-menu.menuItems" role="menuitemcheckbox" aria-checked="false" aria-label="eyes" type="submit" data-view-component="true" class="dropdown-item dropdown-item-reaction btn-invisible btn d-flex no-underline color-fg-muted flex-justify-center flex-items-center rounded-2"> <g-emoji alias="eyes" fallback-src="https://github.githubassets.com/assets/1f440-ee44e91e92a7.png" class="d-flex"><img class="emoji" alt="eyes" height="20" width="20" src="./Release v0.54.0 · hyprwm_Hyprland_files/1f440-ee44e91e92a7.png"></g-emoji>
+</button> </li>
+ </ul>
+</form>
+ </details>
+ </reactions-menu>
+
+ <!-- '"` --><!-- </textarea></xmp> --><form class="js-pick-reaction" data-turbo="false" action="https://github.com/hyprwm/Hyprland/reactions" accept-charset="UTF-8" method="post"><input type="hidden" name="_method" value="put" autocomplete="off"><input type="hidden" name="authenticity_token" value="ZX36IDj6EQX-2yIfL3Mr_PyRhHWE1OuYPga_IPx0TmT4C09uDjOtukbi0a4hF3-5TQwJSwPKatfEy5g28Y2UDw" autocomplete="off">
+ <input type="hidden" name="input[subjectId]" value="RE_kwDOHA7HmM4RX2sU">
+ <div class="js-comment-reactions-options d-flex flex-items-center flex-row flex-wrap">
+ <button name="input[content]" id="reactions--reaction_button_component-4e8cdc" value="THUMBS_UP react" data-button-index-position="0" data-reaction-label="+1" data-reaction-content="+1" aria-pressed="false" aria-label="thumbs up (54): vaxerski, 12:03PM on February 27" type="submit" data-view-component="true" class="social-reaction-summary-item js-reaction-group-button tmp-mr-1 btn-link d-flex no-underline color-fg-muted flex-items-baseline" aria-describedby="tooltip-015a3bea-7cb2-4639-953e-81def33461d1"> <g-emoji alias="+1" fallback-src="https://github.githubassets.com/assets/1f44d-41cb66fe1e22.png" class="social-button-emoji"><img class="emoji" alt="+1" height="20" width="20" src="./Release v0.54.0 · hyprwm_Hyprland_files/1f44d-41cb66fe1e22.png"></g-emoji>
+ <span class="js-discussion-reaction-group-count">54</span>
+</button> <tool-tip id="tooltip-015a3bea-7cb2-4639-953e-81def33461d1" for="reactions--reaction_button_component-4e8cdc" popover="manual" data-direction="n" data-type="description" data-view-component="true" class="sr-only position-absolute" role="tooltip"><template shadowrootmode="open"><style>
+ :host {
+ --tooltip-top: var(--tool-tip-position-top, 0);
+ --tooltip-left: var(--tool-tip-position-left, 0);
+ padding: var(--overlay-paddingBlock-condensed) var(--overlay-padding-condensed) !important;
+ font: var(--text-body-shorthand-small);
+ color: var(--tooltip-fgColor, var(--fgColor-onEmphasis)) !important;
+ text-align: center;
+ text-decoration: none;
+ text-shadow: none;
+ text-transform: none;
+ letter-spacing: normal;
+ word-wrap: break-word;
+ white-space: pre;
+ background: var(--tooltip-bgColor, var(--bgColor-emphasis)) !important;
+ border-radius: var(--borderRadius-medium);
+ border: 0 !important;
+ opacity: 0;
+ max-width: min(var(--overlay-width-small), 100vw);
+ word-wrap: break-word;
+ white-space: normal;
+ width: max-content !important;
+ inset: var(--tooltip-top) auto auto var(--tooltip-left) !important;
+ overflow: visible !important;
+ text-wrap: balance;
+ }
+
+ :host(:is(.tooltip-n, .tooltip-nw, .tooltip-ne)) {
+ --tooltip-top: calc(var(--tool-tip-position-top, 0) - var(--overlay-offset, 0.25rem));
+ --tooltip-left: var(--tool-tip-position-left);
+ }
+
+ :host(:is(.tooltip-s, .tooltip-sw, .tooltip-se)) {
+ --tooltip-top: calc(var(--tool-tip-position-top, 0) + var(--overlay-offset, 0.25rem));
+ --tooltip-left: var(--tool-tip-position-left);
+ }
+
+ :host(.tooltip-w) {
+ --tooltip-top: var(--tool-tip-position-top);
+ --tooltip-left: calc(var(--tool-tip-position-left, 0) - var(--overlay-offset, 0.25rem));
+ }
+
+ :host(.tooltip-e) {
+ --tooltip-top: var(--tool-tip-position-top);
+ --tooltip-left: calc(var(--tool-tip-position-left, 0) + var(--overlay-offset, 0.25rem));
+ }
+
+ :host:after{
+ position: absolute;
+ display: block;
+ right: 0;
+ left: 0;
+ height: var(--overlay-offset, 0.25rem);
+ content: "";
+ }
+
+ :host(.tooltip-s):after,
+ :host(.tooltip-se):after,
+ :host(.tooltip-sw):after {
+ bottom: 100%
+ }
+
+ :host(.tooltip-n):after,
+ :host(.tooltip-ne):after,
+ :host(.tooltip-nw):after {
+ top: 100%;
+ }
+
+ @keyframes tooltip-appear {
+ from {
+ opacity: 0;
+ }
+ to {
+ opacity: 1;
+ }
+ }
+
+ :host(:popover-open),
+ :host(:popover-open):before {
+ animation-name: tooltip-appear;
+ animation-duration: .1s;
+ animation-fill-mode: forwards;
+ animation-timing-function: ease-in;
+ }
+
+ :host(.\:popover-open) {
+ animation-name: tooltip-appear;
+ animation-duration: .1s;
+ animation-fill-mode: forwards;
+ animation-timing-function: ease-in;
+ }
+
+ @media (forced-colors: active) {
+ :host {
+ outline: solid 1px transparent;
+ }
+
+ :host:before {
+ display: none;
+ }
+ }
+ </style><slot></slot></template>deathtrip, Milli189, TheAhumMaitra, Jezda1337, keanehatescoding, conditionull, Andersson793, Tylvrek, glexposito, XinoGami, and 44 more reacted with thumbs up emoji</tool-tip>
+ <button name="input[content]" id="reactions--reaction_button_component-01a5e8" value="LAUGH react" data-button-index-position="2" data-reaction-label="Laugh" data-reaction-content="smile" aria-pressed="false" aria-label="laugh (4): vaxerski, 12:03PM on February 27" type="submit" data-view-component="true" class="social-reaction-summary-item js-reaction-group-button tmp-mr-1 btn-link d-flex no-underline color-fg-muted flex-items-baseline" aria-describedby="tooltip-4429c5fb-5f5d-4d49-b819-b0c2e5c25eb7"> <g-emoji alias="smile" fallback-src="https://github.githubassets.com/assets/1f604-7528822fb4c5.png" class="social-button-emoji"><img class="emoji" alt="smile" height="20" width="20" src="./Release v0.54.0 · hyprwm_Hyprland_files/1f604-7528822fb4c5.png"></g-emoji>
+ <span class="js-discussion-reaction-group-count">4</span>
+</button> <tool-tip id="tooltip-4429c5fb-5f5d-4d49-b819-b0c2e5c25eb7" for="reactions--reaction_button_component-01a5e8" popover="manual" data-direction="n" data-type="description" data-view-component="true" class="sr-only position-absolute" role="tooltip"><template shadowrootmode="open"><style>
+ :host {
+ --tooltip-top: var(--tool-tip-position-top, 0);
+ --tooltip-left: var(--tool-tip-position-left, 0);
+ padding: var(--overlay-paddingBlock-condensed) var(--overlay-padding-condensed) !important;
+ font: var(--text-body-shorthand-small);
+ color: var(--tooltip-fgColor, var(--fgColor-onEmphasis)) !important;
+ text-align: center;
+ text-decoration: none;
+ text-shadow: none;
+ text-transform: none;
+ letter-spacing: normal;
+ word-wrap: break-word;
+ white-space: pre;
+ background: var(--tooltip-bgColor, var(--bgColor-emphasis)) !important;
+ border-radius: var(--borderRadius-medium);
+ border: 0 !important;
+ opacity: 0;
+ max-width: min(var(--overlay-width-small), 100vw);
+ word-wrap: break-word;
+ white-space: normal;
+ width: max-content !important;
+ inset: var(--tooltip-top) auto auto var(--tooltip-left) !important;
+ overflow: visible !important;
+ text-wrap: balance;
+ }
+
+ :host(:is(.tooltip-n, .tooltip-nw, .tooltip-ne)) {
+ --tooltip-top: calc(var(--tool-tip-position-top, 0) - var(--overlay-offset, 0.25rem));
+ --tooltip-left: var(--tool-tip-position-left);
+ }
+
+ :host(:is(.tooltip-s, .tooltip-sw, .tooltip-se)) {
+ --tooltip-top: calc(var(--tool-tip-position-top, 0) + var(--overlay-offset, 0.25rem));
+ --tooltip-left: var(--tool-tip-position-left);
+ }
+
+ :host(.tooltip-w) {
+ --tooltip-top: var(--tool-tip-position-top);
+ --tooltip-left: calc(var(--tool-tip-position-left, 0) - var(--overlay-offset, 0.25rem));
+ }
+
+ :host(.tooltip-e) {
+ --tooltip-top: var(--tool-tip-position-top);
+ --tooltip-left: calc(var(--tool-tip-position-left, 0) + var(--overlay-offset, 0.25rem));
+ }
+
+ :host:after{
+ position: absolute;
+ display: block;
+ right: 0;
+ left: 0;
+ height: var(--overlay-offset, 0.25rem);
+ content: "";
+ }
+
+ :host(.tooltip-s):after,
+ :host(.tooltip-se):after,
+ :host(.tooltip-sw):after {
+ bottom: 100%
+ }
+
+ :host(.tooltip-n):after,
+ :host(.tooltip-ne):after,
+ :host(.tooltip-nw):after {
+ top: 100%;
+ }
+
+ @keyframes tooltip-appear {
+ from {
+ opacity: 0;
+ }
+ to {
+ opacity: 1;
+ }
+ }
+
+ :host(:popover-open),
+ :host(:popover-open):before {
+ animation-name: tooltip-appear;
+ animation-duration: .1s;
+ animation-fill-mode: forwards;
+ animation-timing-function: ease-in;
+ }
+
+ :host(.\:popover-open) {
+ animation-name: tooltip-appear;
+ animation-duration: .1s;
+ animation-fill-mode: forwards;
+ animation-timing-function: ease-in;
+ }
+
+ @media (forced-colors: active) {
+ :host {
+ outline: solid 1px transparent;
+ }
+
+ :host:before {
+ display: none;
+ }
+ }
+ </style><slot></slot></template>jablank, Frestein, panchoh, and Kotsasmin reacted with laugh emoji</tool-tip>
+ <button name="input[content]" id="reactions--reaction_button_component-a8e83e" value="HOORAY react" data-button-index-position="3" data-reaction-label="Hooray" data-reaction-content="tada" aria-pressed="false" aria-label="hooray (77): vaxerski, 12:03PM on February 27" type="submit" data-view-component="true" class="social-reaction-summary-item js-reaction-group-button tmp-mr-1 btn-link d-flex no-underline color-fg-muted flex-items-baseline" aria-describedby="tooltip-e22f5d3d-f69f-41d5-92a7-e09b0ec9c7a6"> <g-emoji alias="tada" fallback-src="https://github.githubassets.com/assets/1f389-36899a2cb781.png" class="social-button-emoji"><img class="emoji" alt="tada" height="20" width="20" src="./Release v0.54.0 · hyprwm_Hyprland_files/1f389-36899a2cb781.png"></g-emoji>
+ <span class="js-discussion-reaction-group-count">77</span>
+</button> <tool-tip id="tooltip-e22f5d3d-f69f-41d5-92a7-e09b0ec9c7a6" for="reactions--reaction_button_component-a8e83e" popover="manual" data-direction="n" data-type="description" data-view-component="true" class="sr-only position-absolute" role="tooltip"><template shadowrootmode="open"><style>
+ :host {
+ --tooltip-top: var(--tool-tip-position-top, 0);
+ --tooltip-left: var(--tool-tip-position-left, 0);
+ padding: var(--overlay-paddingBlock-condensed) var(--overlay-padding-condensed) !important;
+ font: var(--text-body-shorthand-small);
+ color: var(--tooltip-fgColor, var(--fgColor-onEmphasis)) !important;
+ text-align: center;
+ text-decoration: none;
+ text-shadow: none;
+ text-transform: none;
+ letter-spacing: normal;
+ word-wrap: break-word;
+ white-space: pre;
+ background: var(--tooltip-bgColor, var(--bgColor-emphasis)) !important;
+ border-radius: var(--borderRadius-medium);
+ border: 0 !important;
+ opacity: 0;
+ max-width: min(var(--overlay-width-small), 100vw);
+ word-wrap: break-word;
+ white-space: normal;
+ width: max-content !important;
+ inset: var(--tooltip-top) auto auto var(--tooltip-left) !important;
+ overflow: visible !important;
+ text-wrap: balance;
+ }
+
+ :host(:is(.tooltip-n, .tooltip-nw, .tooltip-ne)) {
+ --tooltip-top: calc(var(--tool-tip-position-top, 0) - var(--overlay-offset, 0.25rem));
+ --tooltip-left: var(--tool-tip-position-left);
+ }
+
+ :host(:is(.tooltip-s, .tooltip-sw, .tooltip-se)) {
+ --tooltip-top: calc(var(--tool-tip-position-top, 0) + var(--overlay-offset, 0.25rem));
+ --tooltip-left: var(--tool-tip-position-left);
+ }
+
+ :host(.tooltip-w) {
+ --tooltip-top: var(--tool-tip-position-top);
+ --tooltip-left: calc(var(--tool-tip-position-left, 0) - var(--overlay-offset, 0.25rem));
+ }
+
+ :host(.tooltip-e) {
+ --tooltip-top: var(--tool-tip-position-top);
+ --tooltip-left: calc(var(--tool-tip-position-left, 0) + var(--overlay-offset, 0.25rem));
+ }
+
+ :host:after{
+ position: absolute;
+ display: block;
+ right: 0;
+ left: 0;
+ height: var(--overlay-offset, 0.25rem);
+ content: "";
+ }
+
+ :host(.tooltip-s):after,
+ :host(.tooltip-se):after,
+ :host(.tooltip-sw):after {
+ bottom: 100%
+ }
+
+ :host(.tooltip-n):after,
+ :host(.tooltip-ne):after,
+ :host(.tooltip-nw):after {
+ top: 100%;
+ }
+
+ @keyframes tooltip-appear {
+ from {
+ opacity: 0;
+ }
+ to {
+ opacity: 1;
+ }
+ }
+
+ :host(:popover-open),
+ :host(:popover-open):before {
+ animation-name: tooltip-appear;
+ animation-duration: .1s;
+ animation-fill-mode: forwards;
+ animation-timing-function: ease-in;
+ }
+
+ :host(.\:popover-open) {
+ animation-name: tooltip-appear;
+ animation-duration: .1s;
+ animation-fill-mode: forwards;
+ animation-timing-function: ease-in;
+ }
+
+ @media (forced-colors: active) {
+ :host {
+ outline: solid 1px transparent;
+ }
+
+ :host:before {
+ display: none;
+ }
+ }
+ </style><slot></slot></template>retrozinndev, ShashwatAgrawal20, SelfHostedEnv, harshil21, Amatsu-Kami, Insprill, tekstryder, sreedevk, nolvyn, agusnieto, and 67 more reacted with hooray emoji</tool-tip>
+ <button name="input[content]" id="reactions--reaction_button_component-c56cc2" value="HEART react" data-button-index-position="5" data-reaction-label="Heart" data-reaction-content="heart" aria-pressed="false" aria-label="heart (84): vaxerski, 12:03PM on February 27" type="submit" data-view-component="true" class="social-reaction-summary-item js-reaction-group-button tmp-mr-1 btn-link d-flex no-underline color-fg-muted flex-items-baseline" aria-describedby="tooltip-7e7e42f7-bd4c-41c3-8300-16cf29261546"> <g-emoji alias="heart" fallback-src="https://github.githubassets.com/assets/2764-982dc91ea48a.png" class="social-button-emoji"><img class="emoji" alt="heart" height="20" width="20" src="./Release v0.54.0 · hyprwm_Hyprland_files/2764-982dc91ea48a.png"></g-emoji>
+ <span class="js-discussion-reaction-group-count">84</span>
+</button> <tool-tip id="tooltip-7e7e42f7-bd4c-41c3-8300-16cf29261546" for="reactions--reaction_button_component-c56cc2" popover="manual" data-direction="n" data-type="description" data-view-component="true" class="sr-only position-absolute" role="tooltip"><template shadowrootmode="open"><style>
+ :host {
+ --tooltip-top: var(--tool-tip-position-top, 0);
+ --tooltip-left: var(--tool-tip-position-left, 0);
+ padding: var(--overlay-paddingBlock-condensed) var(--overlay-padding-condensed) !important;
+ font: var(--text-body-shorthand-small);
+ color: var(--tooltip-fgColor, var(--fgColor-onEmphasis)) !important;
+ text-align: center;
+ text-decoration: none;
+ text-shadow: none;
+ text-transform: none;
+ letter-spacing: normal;
+ word-wrap: break-word;
+ white-space: pre;
+ background: var(--tooltip-bgColor, var(--bgColor-emphasis)) !important;
+ border-radius: var(--borderRadius-medium);
+ border: 0 !important;
+ opacity: 0;
+ max-width: min(var(--overlay-width-small), 100vw);
+ word-wrap: break-word;
+ white-space: normal;
+ width: max-content !important;
+ inset: var(--tooltip-top) auto auto var(--tooltip-left) !important;
+ overflow: visible !important;
+ text-wrap: balance;
+ }
+
+ :host(:is(.tooltip-n, .tooltip-nw, .tooltip-ne)) {
+ --tooltip-top: calc(var(--tool-tip-position-top, 0) - var(--overlay-offset, 0.25rem));
+ --tooltip-left: var(--tool-tip-position-left);
+ }
+
+ :host(:is(.tooltip-s, .tooltip-sw, .tooltip-se)) {
+ --tooltip-top: calc(var(--tool-tip-position-top, 0) + var(--overlay-offset, 0.25rem));
+ --tooltip-left: var(--tool-tip-position-left);
+ }
+
+ :host(.tooltip-w) {
+ --tooltip-top: var(--tool-tip-position-top);
+ --tooltip-left: calc(var(--tool-tip-position-left, 0) - var(--overlay-offset, 0.25rem));
+ }
+
+ :host(.tooltip-e) {
+ --tooltip-top: var(--tool-tip-position-top);
+ --tooltip-left: calc(var(--tool-tip-position-left, 0) + var(--overlay-offset, 0.25rem));
+ }
+
+ :host:after{
+ position: absolute;
+ display: block;
+ right: 0;
+ left: 0;
+ height: var(--overlay-offset, 0.25rem);
+ content: "";
+ }
+
+ :host(.tooltip-s):after,
+ :host(.tooltip-se):after,
+ :host(.tooltip-sw):after {
+ bottom: 100%
+ }
+
+ :host(.tooltip-n):after,
+ :host(.tooltip-ne):after,
+ :host(.tooltip-nw):after {
+ top: 100%;
+ }
+
+ @keyframes tooltip-appear {
+ from {
+ opacity: 0;
+ }
+ to {
+ opacity: 1;
+ }
+ }
+
+ :host(:popover-open),
+ :host(:popover-open):before {
+ animation-name: tooltip-appear;
+ animation-duration: .1s;
+ animation-fill-mode: forwards;
+ animation-timing-function: ease-in;
+ }
+
+ :host(.\:popover-open) {
+ animation-name: tooltip-appear;
+ animation-duration: .1s;
+ animation-fill-mode: forwards;
+ animation-timing-function: ease-in;
+ }
+
+ @media (forced-colors: active) {
+ :host {
+ outline: solid 1px transparent;
+ }
+
+ :host:before {
+ display: none;
+ }
+ }
+ </style><slot></slot></template>cryeprecision, Ali-SZ, flashrun24, callmenoodles, retrozinndev, ShashwatAgrawal20, harshil21, Amatsu-Kami, Insprill, sreedevk, and 74 more reacted with heart emoji</tool-tip>
+ <button name="input[content]" id="reactions--reaction_button_component-cc9293" value="ROCKET react" data-button-index-position="6" data-reaction-label="Rocket" data-reaction-content="rocket" aria-pressed="false" aria-label="rocket (17): vaxerski, 12:03PM on February 27" type="submit" data-view-component="true" class="social-reaction-summary-item js-reaction-group-button tmp-mr-1 btn-link d-flex no-underline color-fg-muted flex-items-baseline" aria-describedby="tooltip-b993be0d-807a-4030-8169-0fd2c03e40a6"> <g-emoji alias="rocket" fallback-src="https://github.githubassets.com/assets/1f680-d0ef47fdb515.png" class="social-button-emoji"><img class="emoji" alt="rocket" height="20" width="20" src="./Release v0.54.0 · hyprwm_Hyprland_files/1f680-d0ef47fdb515.png"></g-emoji>
+ <span class="js-discussion-reaction-group-count">17</span>
+</button> <tool-tip id="tooltip-b993be0d-807a-4030-8169-0fd2c03e40a6" for="reactions--reaction_button_component-cc9293" popover="manual" data-direction="n" data-type="description" data-view-component="true" class="sr-only position-absolute" role="tooltip"><template shadowrootmode="open"><style>
+ :host {
+ --tooltip-top: var(--tool-tip-position-top, 0);
+ --tooltip-left: var(--tool-tip-position-left, 0);
+ padding: var(--overlay-paddingBlock-condensed) var(--overlay-padding-condensed) !important;
+ font: var(--text-body-shorthand-small);
+ color: var(--tooltip-fgColor, var(--fgColor-onEmphasis)) !important;
+ text-align: center;
+ text-decoration: none;
+ text-shadow: none;
+ text-transform: none;
+ letter-spacing: normal;
+ word-wrap: break-word;
+ white-space: pre;
+ background: var(--tooltip-bgColor, var(--bgColor-emphasis)) !important;
+ border-radius: var(--borderRadius-medium);
+ border: 0 !important;
+ opacity: 0;
+ max-width: min(var(--overlay-width-small), 100vw);
+ word-wrap: break-word;
+ white-space: normal;
+ width: max-content !important;
+ inset: var(--tooltip-top) auto auto var(--tooltip-left) !important;
+ overflow: visible !important;
+ text-wrap: balance;
+ }
+
+ :host(:is(.tooltip-n, .tooltip-nw, .tooltip-ne)) {
+ --tooltip-top: calc(var(--tool-tip-position-top, 0) - var(--overlay-offset, 0.25rem));
+ --tooltip-left: var(--tool-tip-position-left);
+ }
+
+ :host(:is(.tooltip-s, .tooltip-sw, .tooltip-se)) {
+ --tooltip-top: calc(var(--tool-tip-position-top, 0) + var(--overlay-offset, 0.25rem));
+ --tooltip-left: var(--tool-tip-position-left);
+ }
+
+ :host(.tooltip-w) {
+ --tooltip-top: var(--tool-tip-position-top);
+ --tooltip-left: calc(var(--tool-tip-position-left, 0) - var(--overlay-offset, 0.25rem));
+ }
+
+ :host(.tooltip-e) {
+ --tooltip-top: var(--tool-tip-position-top);
+ --tooltip-left: calc(var(--tool-tip-position-left, 0) + var(--overlay-offset, 0.25rem));
+ }
+
+ :host:after{
+ position: absolute;
+ display: block;
+ right: 0;
+ left: 0;
+ height: var(--overlay-offset, 0.25rem);
+ content: "";
+ }
+
+ :host(.tooltip-s):after,
+ :host(.tooltip-se):after,
+ :host(.tooltip-sw):after {
+ bottom: 100%
+ }
+
+ :host(.tooltip-n):after,
+ :host(.tooltip-ne):after,
+ :host(.tooltip-nw):after {
+ top: 100%;
+ }
+
+ @keyframes tooltip-appear {
+ from {
+ opacity: 0;
+ }
+ to {
+ opacity: 1;
+ }
+ }
+
+ :host(:popover-open),
+ :host(:popover-open):before {
+ animation-name: tooltip-appear;
+ animation-duration: .1s;
+ animation-fill-mode: forwards;
+ animation-timing-function: ease-in;
+ }
+
+ :host(.\:popover-open) {
+ animation-name: tooltip-appear;
+ animation-duration: .1s;
+ animation-fill-mode: forwards;
+ animation-timing-function: ease-in;
+ }
+
+ @media (forced-colors: active) {
+ :host {
+ outline: solid 1px transparent;
+ }
+
+ :host:before {
+ display: none;
+ }
+ }
+ </style><slot></slot></template>Jezda1337, arutkowski00, d0wniz, YannMagnin, VladasZ, Tylvrek, glexposito, XinoGami, RedHatDarrow, simone-lungarella, and 7 more reacted with rocket emoji</tool-tip>
+ <button name="input[content]" id="reactions--reaction_button_component-718f9f" value="EYES react" data-button-index-position="7" data-reaction-label="Eyes" data-reaction-content="eyes" aria-pressed="false" aria-label="eyes (5): vaxerski, 12:03PM on February 27" type="submit" data-view-component="true" class="social-reaction-summary-item js-reaction-group-button tmp-mr-1 btn-link d-flex no-underline color-fg-muted flex-items-baseline" aria-describedby="tooltip-5aa65259-c189-443a-bfff-81b5b61e73d0"> <g-emoji alias="eyes" fallback-src="https://github.githubassets.com/assets/1f440-ee44e91e92a7.png" class="social-button-emoji"><img class="emoji" alt="eyes" height="20" width="20" src="./Release v0.54.0 · hyprwm_Hyprland_files/1f440-ee44e91e92a7.png"></g-emoji>
+ <span class="js-discussion-reaction-group-count">5</span>
+</button> <tool-tip id="tooltip-5aa65259-c189-443a-bfff-81b5b61e73d0" for="reactions--reaction_button_component-718f9f" popover="manual" data-direction="n" data-type="description" data-view-component="true" class="sr-only position-absolute" role="tooltip"><template shadowrootmode="open"><style>
+ :host {
+ --tooltip-top: var(--tool-tip-position-top, 0);
+ --tooltip-left: var(--tool-tip-position-left, 0);
+ padding: var(--overlay-paddingBlock-condensed) var(--overlay-padding-condensed) !important;
+ font: var(--text-body-shorthand-small);
+ color: var(--tooltip-fgColor, var(--fgColor-onEmphasis)) !important;
+ text-align: center;
+ text-decoration: none;
+ text-shadow: none;
+ text-transform: none;
+ letter-spacing: normal;
+ word-wrap: break-word;
+ white-space: pre;
+ background: var(--tooltip-bgColor, var(--bgColor-emphasis)) !important;
+ border-radius: var(--borderRadius-medium);
+ border: 0 !important;
+ opacity: 0;
+ max-width: min(var(--overlay-width-small), 100vw);
+ word-wrap: break-word;
+ white-space: normal;
+ width: max-content !important;
+ inset: var(--tooltip-top) auto auto var(--tooltip-left) !important;
+ overflow: visible !important;
+ text-wrap: balance;
+ }
+
+ :host(:is(.tooltip-n, .tooltip-nw, .tooltip-ne)) {
+ --tooltip-top: calc(var(--tool-tip-position-top, 0) - var(--overlay-offset, 0.25rem));
+ --tooltip-left: var(--tool-tip-position-left);
+ }
+
+ :host(:is(.tooltip-s, .tooltip-sw, .tooltip-se)) {
+ --tooltip-top: calc(var(--tool-tip-position-top, 0) + var(--overlay-offset, 0.25rem));
+ --tooltip-left: var(--tool-tip-position-left);
+ }
+
+ :host(.tooltip-w) {
+ --tooltip-top: var(--tool-tip-position-top);
+ --tooltip-left: calc(var(--tool-tip-position-left, 0) - var(--overlay-offset, 0.25rem));
+ }
+
+ :host(.tooltip-e) {
+ --tooltip-top: var(--tool-tip-position-top);
+ --tooltip-left: calc(var(--tool-tip-position-left, 0) + var(--overlay-offset, 0.25rem));
+ }
+
+ :host:after{
+ position: absolute;
+ display: block;
+ right: 0;
+ left: 0;
+ height: var(--overlay-offset, 0.25rem);
+ content: "";
+ }
+
+ :host(.tooltip-s):after,
+ :host(.tooltip-se):after,
+ :host(.tooltip-sw):after {
+ bottom: 100%
+ }
+
+ :host(.tooltip-n):after,
+ :host(.tooltip-ne):after,
+ :host(.tooltip-nw):after {
+ top: 100%;
+ }
+
+ @keyframes tooltip-appear {
+ from {
+ opacity: 0;
+ }
+ to {
+ opacity: 1;
+ }
+ }
+
+ :host(:popover-open),
+ :host(:popover-open):before {
+ animation-name: tooltip-appear;
+ animation-duration: .1s;
+ animation-fill-mode: forwards;
+ animation-timing-function: ease-in;
+ }
+
+ :host(.\:popover-open) {
+ animation-name: tooltip-appear;
+ animation-duration: .1s;
+ animation-fill-mode: forwards;
+ animation-timing-function: ease-in;
+ }
+
+ @media (forced-colors: active) {
+ :host {
+ outline: solid 1px transparent;
+ }
+
+ :host:before {
+ display: none;
+ }
+ }
+ </style><slot></slot></template>Lau-San, glexposito, XinoGami, Frestein, and InconceivableTortoise42 reacted with eyes emoji</tool-tip>
+ <div class="js-reactions-container">
+ <details class="dropdown details-reset details-overlay d-inline-block js-all-reactions-popover" hidden="">
+ <summary aria-haspopup="true" data-view-component="true" class="Button--link Button--medium Button"> <span class="Button-content">
+ <span class="Button-label">All reactions</span>
+ </span>
+</summary>
+
+ <ul class="dropdown-menu dropdown-menu-se">
+ <li class="dropdown-item" aria-label="deathtrip, Milli189, TheAhumMaitra, Jezda1337, keanehatescoding, conditionull, Andersson793, Tylvrek, glexposito, XinoGami, and 44 more reacted with thumbs up emoji">
+ <g-emoji alias="+1" fallback-src="https://github.githubassets.com/assets/1f44d-41cb66fe1e22.png" class="social-button-emoji mr-2"><img class="emoji" alt="+1" height="20" width="20" src="./Release v0.54.0 · hyprwm_Hyprland_files/1f44d-41cb66fe1e22.png"></g-emoji>
+ <span>54 reactions</span>
+ </li>
+ <li class="dropdown-item" aria-label="jablank, Frestein, panchoh, and Kotsasmin reacted with laugh emoji">
+ <g-emoji alias="smile" fallback-src="https://github.githubassets.com/assets/1f604-7528822fb4c5.png" class="social-button-emoji mr-2"><img class="emoji" alt="smile" height="20" width="20" src="./Release v0.54.0 · hyprwm_Hyprland_files/1f604-7528822fb4c5.png"></g-emoji>
+ <span>4 reactions</span>
+ </li>
+ <li class="dropdown-item" aria-label="retrozinndev, ShashwatAgrawal20, SelfHostedEnv, harshil21, Amatsu-Kami, Insprill, tekstryder, sreedevk, nolvyn, agusnieto, and 67 more reacted with hooray emoji">
+ <g-emoji alias="tada" fallback-src="https://github.githubassets.com/assets/1f389-36899a2cb781.png" class="social-button-emoji mr-2"><img class="emoji" alt="tada" height="20" width="20" src="./Release v0.54.0 · hyprwm_Hyprland_files/1f389-36899a2cb781.png"></g-emoji>
+ <span>77 reactions</span>
+ </li>
+ <li class="dropdown-item" aria-label="cryeprecision, Ali-SZ, flashrun24, callmenoodles, retrozinndev, ShashwatAgrawal20, harshil21, Amatsu-Kami, Insprill, sreedevk, and 74 more reacted with heart emoji">
+ <g-emoji alias="heart" fallback-src="https://github.githubassets.com/assets/2764-982dc91ea48a.png" class="social-button-emoji mr-2"><img class="emoji" alt="heart" height="20" width="20" src="./Release v0.54.0 · hyprwm_Hyprland_files/2764-982dc91ea48a.png"></g-emoji>
+ <span>84 reactions</span>
+ </li>
+ <li class="dropdown-item" aria-label="Jezda1337, arutkowski00, d0wniz, YannMagnin, VladasZ, Tylvrek, glexposito, XinoGami, RedHatDarrow, simone-lungarella, and 7 more reacted with rocket emoji">
+ <g-emoji alias="rocket" fallback-src="https://github.githubassets.com/assets/1f680-d0ef47fdb515.png" class="social-button-emoji mr-2"><img class="emoji" alt="rocket" height="20" width="20" src="./Release v0.54.0 · hyprwm_Hyprland_files/1f680-d0ef47fdb515.png"></g-emoji>
+ <span>17 reactions</span>
+ </li>
+ <li class="dropdown-item" aria-label="Lau-San, glexposito, XinoGami, Frestein, and InconceivableTortoise42 reacted with eyes emoji">
+ <g-emoji alias="eyes" fallback-src="https://github.githubassets.com/assets/1f440-ee44e91e92a7.png" class="social-button-emoji mr-2"><img class="emoji" alt="eyes" height="20" width="20" src="./Release v0.54.0 · hyprwm_Hyprland_files/1f440-ee44e91e92a7.png"></g-emoji>
+ <span>5 reactions</span>
+ </li>
+ </ul>
+ </details>
+ </div>
+ </div>
+</form> <div data-view-component="true" class="color-fg-muted mt-1">156 people reacted</div>
+</div>
+ </div>
+</div>
+</div></div>
+
+</div>
+
+
+ </div>
+
+</turbo-frame>
+
+
+ </main>
+ </div>
+
+ </div>
+
+ <footer class="footer tmp-pt-7 tmp-pb-6 f6 color-fg-muted color-border-subtle p-responsive" role="contentinfo">
+ <h2 class="sr-only">Footer</h2>
+
+
+
+
+ <div class="d-flex flex-justify-center flex-items-center flex-column-reverse flex-lg-row flex-wrap flex-lg-nowrap">
+ <div class="d-flex flex-items-center flex-shrink-0 mx-2">
+ <a aria-label="GitHub Homepage" class="footer-octicon mr-2" href="https://github.com/">
+ <svg aria-hidden="true" height="24" viewBox="0 0 24 24" version="1.1" width="24" data-view-component="true" class="octicon octicon-mark-github">
+ <path d="M10.303 16.652c-2.837-.344-4.835-2.385-4.835-5.028 0-1.074.387-2.235 1.031-3.008-.279-.709-.236-2.214.086-2.837.86-.107 2.02.344 2.708.967.816-.258 1.676-.386 2.728-.386 1.053 0 1.913.128 2.686.365.666-.602 1.848-1.053 2.708-.946.3.581.344 2.085.064 2.815.688.817 1.053 1.913 1.053 3.03 0 2.643-1.998 4.641-4.877 5.006.73.473 1.224 1.504 1.224 2.686v2.235c0 .644.537 1.01 1.182.752 3.889-1.483 6.94-5.372 6.94-10.185 0-6.081-4.942-11.044-11.022-11.044-6.081 0-10.98 4.963-10.98 11.044a10.84 10.84 0 0 0 7.112 10.206c.58.215 1.139-.172 1.139-.752v-1.719a2.768 2.768 0 0 1-1.032.215c-1.418 0-2.256-.773-2.857-2.213-.237-.58-.495-.924-.989-.988-.258-.022-.344-.129-.344-.258 0-.258.43-.451.86-.451.623 0 1.16.386 1.719 1.181.43.623.881.903 1.418.903.537 0 .881-.194 1.375-.688.365-.365.645-.687.903-.902Z"></path>
+</svg>
+</a>
+ <span>
+ © 2026 GitHub,&nbsp;Inc.
+ </span>
+ </div>
+
+ <nav aria-label="Footer">
+ <h3 class="sr-only" id="sr-footer-heading">Footer navigation</h3>
+
+ <ul class="list-style-none d-flex flex-justify-center flex-wrap mb-2 mb-lg-0" aria-labelledby="sr-footer-heading">
+
+
+ <li class="mx-2">
+ <a data-analytics-event="{&quot;category&quot;:&quot;Footer&quot;,&quot;action&quot;:&quot;go to Terms&quot;,&quot;label&quot;:&quot;text:terms&quot;}" href="https://docs.github.com/site-policy/github-terms/github-terms-of-service" data-view-component="true" class="Link--secondary Link">Terms</a>
+ </li>
+
+ <li class="mx-2">
+ <a data-analytics-event="{&quot;category&quot;:&quot;Footer&quot;,&quot;action&quot;:&quot;go to privacy&quot;,&quot;label&quot;:&quot;text:privacy&quot;}" href="https://docs.github.com/site-policy/privacy-policies/github-privacy-statement" data-view-component="true" class="Link--secondary Link">Privacy</a>
+ </li>
+
+ <li class="mx-2">
+ <a data-analytics-event="{&quot;category&quot;:&quot;Footer&quot;,&quot;action&quot;:&quot;go to security&quot;,&quot;label&quot;:&quot;text:security&quot;}" href="https://github.com/security" data-view-component="true" class="Link--secondary Link">Security</a>
+ </li>
+
+ <li class="mx-2">
+ <a data-analytics-event="{&quot;category&quot;:&quot;Footer&quot;,&quot;action&quot;:&quot;go to status&quot;,&quot;label&quot;:&quot;text:status&quot;}" href="https://www.githubstatus.com/" data-view-component="true" class="Link--secondary Link">Status</a>
+ </li>
+
+ <li class="mx-2">
+ <a data-analytics-event="{&quot;category&quot;:&quot;Footer&quot;,&quot;action&quot;:&quot;go to community&quot;,&quot;label&quot;:&quot;text:community&quot;}" href="https://github.community/" data-view-component="true" class="Link--secondary Link">Community</a>
+ </li>
+
+ <li class="mx-2">
+ <a data-analytics-event="{&quot;category&quot;:&quot;Footer&quot;,&quot;action&quot;:&quot;go to docs&quot;,&quot;label&quot;:&quot;text:docs&quot;}" href="https://docs.github.com/" data-view-component="true" class="Link--secondary Link">Docs</a>
+ </li>
+
+ <li class="mx-2">
+ <a data-analytics-event="{&quot;category&quot;:&quot;Footer&quot;,&quot;action&quot;:&quot;go to contact&quot;,&quot;label&quot;:&quot;text:contact&quot;}" href="https://support.github.com/?tags=dotcom-footer" data-view-component="true" class="Link--secondary Link">Contact</a>
+ </li>
+
+ <li class="mx-2">
+ <cookie-consent-link data-catalyst="">
+ <button type="button" class="Link--secondary underline-on-hover border-0 p-0 color-bg-transparent" data-action="click:cookie-consent-link#showConsentManagement" data-analytics-event="{&quot;location&quot;:&quot;footer&quot;,&quot;action&quot;:&quot;cookies&quot;,&quot;context&quot;:&quot;subfooter&quot;,&quot;tag&quot;:&quot;link&quot;,&quot;label&quot;:&quot;cookies_link_subfooter_footer&quot;}">
+ Manage cookies
+ </button>
+ </cookie-consent-link>
+</li>
+
+<li class="mx-2">
+ <cookie-consent-link data-catalyst="">
+ <button type="button" class="Link--secondary underline-on-hover border-0 p-0 color-bg-transparent text-left" data-action="click:cookie-consent-link#showConsentManagement" data-analytics-event="{&quot;location&quot;:&quot;footer&quot;,&quot;action&quot;:&quot;dont_share_info&quot;,&quot;context&quot;:&quot;subfooter&quot;,&quot;tag&quot;:&quot;link&quot;,&quot;label&quot;:&quot;dont_share_info_link_subfooter_footer&quot;}">
+ Do not share my personal information
+ </button>
+ </cookie-consent-link>
+</li>
+
+ </ul>
+ </nav>
+ </div>
+</footer>
+
+
+
+ <ghcc-consent id="ghcc" class="position-fixed bottom-0 left-0" style="z-index: 999999" data-locale="en" data-initial-cookie-consent-allowed="" data-cookie-consent-required="false" data-catalyst=""></ghcc-consent>
+
+
+
+
+ <div id="ajax-error-message" class="ajax-error-message flash flash-error" hidden="">
+ <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-alert">
+ <path d="M6.457 1.047c.659-1.234 2.427-1.234 3.086 0l6.082 11.378A1.75 1.75 0 0 1 14.082 15H1.918a1.75 1.75 0 0 1-1.543-2.575Zm1.763.707a.25.25 0 0 0-.44 0L1.698 13.132a.25.25 0 0 0 .22.368h12.164a.25.25 0 0 0 .22-.368Zm.53 3.996v2.5a.75.75 0 0 1-1.5 0v-2.5a.75.75 0 0 1 1.5 0ZM9 11a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z"></path>
+</svg>
+ <button type="button" class="flash-close js-ajax-error-dismiss" aria-label="Dismiss error">
+ <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-x">
+ <path d="M3.72 3.72a.75.75 0 0 1 1.06 0L8 6.94l3.22-3.22a.749.749 0 0 1 1.275.326.749.749 0 0 1-.215.734L9.06 8l3.22 3.22a.749.749 0 0 1-.326 1.275.749.749 0 0 1-.734-.215L8 9.06l-3.22 3.22a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042L6.94 8 3.72 4.78a.75.75 0 0 1 0-1.06Z"></path>
+</svg>
+ </button>
+ You can’t perform that action at this time.
+ </div>
+
+ <template id="site-details-dialog"></template>
+
+ <div class="Popover js-hovercard-content position-absolute" style="display: none; outline: none;">
+ <div class="Popover-message Popover-message--bottom-left Popover-message--large Box color-shadow-large" style="width:360px;"></div>
+</div>
+
+ <template id="snippet-clipboard-copy-button"></template>
+<template id="snippet-clipboard-copy-button-unpositioned"></template>
+
+
+ <style>
+ .user-mention[href$="/cjennings"] {
+ color: var(--color-user-mention-fg);
+ background-color: var(--bgColor-attention-muted, var(--color-attention-subtle));
+ border-radius: 2px;
+ margin-left: -2px;
+ margin-right: -2px;
+ }
+ .user-mention[href$="/cjennings"]:before,
+ .user-mention[href$="/cjennings"]:after {
+ content: '';
+ display: inline-block;
+ width: 2px;
+ }
+ </style>
+
+
+ </div>
+ <div id="js-global-screen-reader-notice" class="sr-only mt-n1" aria-live="polite" aria-atomic="true"></div>
+ <div id="js-global-screen-reader-notice-assertive" class="sr-only mt-n1" aria-live="assertive" aria-atomic="true"></div>
+
+
+
+</body></html> \ No newline at end of file