CINXE.COM

Projects/KWin - KDE TechBase

<!DOCTYPE html> <html class="client-nojs vector-feature-language-in-header-enabled vector-feature-language-in-main-page-header-disabled vector-feature-sticky-header-disabled vector-feature-page-tools-pinned-disabled vector-feature-toc-pinned-clientpref-1 vector-feature-main-menu-pinned-disabled vector-feature-limited-width-clientpref-1 vector-feature-limited-width-content-enabled vector-feature-zebra-design-disabled vector-feature-custom-font-size-clientpref-disabled vector-feature-client-preferences-disabled vector-feature-typography-survey-disabled vector-toc-available" lang="en" dir="ltr"> <head> <meta charset="UTF-8"> <title>Projects/KWin - KDE TechBase</title> <script>(function(){var className="client-js vector-feature-language-in-header-enabled vector-feature-language-in-main-page-header-disabled vector-feature-sticky-header-disabled vector-feature-page-tools-pinned-disabled vector-feature-toc-pinned-clientpref-1 vector-feature-main-menu-pinned-disabled vector-feature-limited-width-clientpref-1 vector-feature-limited-width-content-enabled vector-feature-zebra-design-disabled vector-feature-custom-font-size-clientpref-disabled vector-feature-client-preferences-disabled vector-feature-typography-survey-disabled vector-toc-available";var cookie=document.cookie.match(/(?:^|; )techbasemwclientpreferences=([^;]+)/);if(cookie){cookie[1].split('%2C').forEach(function(pref){className=className.replace(new RegExp('(^| )'+pref.replace(/-clientpref-\w+$|[^\w-]+/g,'')+'-clientpref-\\w+( |$)'),'$1'+pref+'$2');});}document.documentElement.className=className;}());RLCONF={"wgBreakFrames":true,"wgSeparatorTransformTable":["",""],"wgDigitTransformTable":["",""], "wgDefaultDateFormat":"dmy","wgMonthNames":["","January","February","March","April","May","June","July","August","September","October","November","December"],"wgRequestId":"8f05ca6f6de0fe71b0a1516a","wgCanonicalNamespace":"","wgCanonicalSpecialPageName":false,"wgNamespaceNumber":0,"wgPageName":"Projects/KWin","wgTitle":"Projects/KWin","wgCurRevisionId":106882,"wgRevisionId":106882,"wgArticleId":6082,"wgIsArticle":true,"wgIsRedirect":false,"wgAction":"view","wgUserName":null,"wgUserGroups":["*"],"wgCategories":[],"wgPageViewLanguage":"en","wgPageContentLanguage":"en","wgPageContentModel":"wikitext","wgRelevantPageName":"Projects/KWin","wgRelevantArticleId":6082,"wgIsProbablyEditable":false,"wgRelevantPageIsProbablyEditable":false,"wgRestrictionEdit":[],"wgRestrictionMove":[],"wgULSAcceptLanguageList":[],"wgULSCurrentAutonym":"English","wgULSPosition":"personal","wgULSisCompactLinksEnabled":true,"wgULSisLanguageSelectorEmpty":false};RLSTATE={"skins.vector.user.styles":"ready", "site.styles":"ready","user.styles":"ready","skins.vector.user":"ready","user":"ready","user.options":"loading","codex-search-styles":"ready","skins.vector.styles":"ready","skins.vector.icons":"ready","ext.uls.pt":"ready"};RLPAGEMODULES=["site","mediawiki.page.ready","skins.vector.js","ext.uls.compactlinks","ext.uls.interface"];</script> <script>(RLQ=window.RLQ||[]).push(function(){mw.loader.impl(function(){return["user.options@12s5i",function($,jQuery,require,module){mw.user.tokens.set({"patrolToken":"+\\","watchToken":"+\\","csrfToken":"+\\"}); }];});});</script> <link rel="stylesheet" href="/load.php?lang=en&amp;modules=codex-search-styles%7Cext.uls.pt%7Cskins.vector.icons%2Cstyles&amp;only=styles&amp;skin=vector-2022"> <script async="" src="/load.php?lang=en&amp;modules=startup&amp;only=scripts&amp;raw=1&amp;skin=vector-2022"></script> <meta name="ResourceLoaderDynamicStyles" content=""> <link rel="stylesheet" href="/load.php?lang=en&amp;modules=site.styles&amp;only=styles&amp;skin=vector-2022"> <meta name="generator" content="MediaWiki 1.41.4"> <meta name="robots" content="max-image-preview:standard"> <meta name="format-detection" content="telephone=no"> <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes, minimum-scale=0.25, maximum-scale=5.0"> <link rel="apple-touch-icon" href="https://www.kde.org/aether/media/180x180.png"> <link rel="icon" href="https://www.kde.org/aether/media/192x192.png"> <link rel="search" type="application/opensearchdescription+xml" href="/opensearch_desc.php" title="KDE TechBase (en)"> <link rel="EditURI" type="application/rsd+xml" href="https://techbase.kde.org/api.php?action=rsd"> <link rel="license" href="/KDE_TechBase:Copyrights"> <link rel="alternate" type="application/atom+xml" title="KDE TechBase Atom feed" href="/index.php?title=Special:RecentChanges&amp;feed=atom"> </head> <body class="skin-vector skin-vector-search-vue mediawiki ltr sitedir-ltr mw-hide-empty-elt ns-0 ns-subject page-Projects_KWin rootpage-Projects skin-vector-2022 action-view skin--responsive"><a class="mw-jump-link" href="#bodyContent">Jump to content</a> <div class="vector-header-container"> <header class="vector-header mw-header"> <div class="vector-header-start"> <nav class="vector-main-menu-landmark" aria-label="Site" role="navigation"> <div id="vector-main-menu-dropdown" class="vector-dropdown vector-main-menu-dropdown vector-button-flush-left vector-button-flush-right" > <input type="checkbox" id="vector-main-menu-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-main-menu-dropdown" class="vector-dropdown-checkbox " aria-label="Main menu" > <label id="vector-main-menu-dropdown-label" for="vector-main-menu-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only " aria-hidden="true" ><span class="vector-icon mw-ui-icon-menu mw-ui-icon-wikimedia-menu"></span> <span class="vector-dropdown-label-text">Main menu</span> </label> <div class="vector-dropdown-content"> <div id="vector-main-menu-unpinned-container" class="vector-unpinned-container"> <div id="vector-main-menu" class="vector-main-menu vector-pinnable-element"> <div class="vector-pinnable-header vector-main-menu-pinnable-header vector-pinnable-header-unpinned" data-feature-name="main-menu-pinned" data-pinnable-element-id="vector-main-menu" data-pinned-container-id="vector-main-menu-pinned-container" data-unpinned-container-id="vector-main-menu-unpinned-container" > <div class="vector-pinnable-header-label">Main menu</div> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-pin-button" data-event-name="pinnable-header.vector-main-menu.pin">move to sidebar</button> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-unpin-button" data-event-name="pinnable-header.vector-main-menu.unpin">hide</button> </div> <div id="p-navigation" class="vector-menu mw-portlet mw-portlet-navigation" > <div class="vector-menu-heading"> Navigation </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="n-Home" class="mw-list-item"><a href="/Special:MyLanguage/Welcome_to_KDE_TechBase"><span>Home</span></a></li><li id="n-help" class="mw-list-item"><a href="https://www.mediawiki.org/wiki/Special:myLanguage/Help:Contents" title="The place to find out"><span>Help</span></a></li><li id="n-recentchanges" class="mw-list-item"><a href="/Special:RecentChanges" title="A list of recent changes in the wiki [r]" accesskey="r"><span>Recent changes</span></a></li> </ul> </div> </div> <div id="p-Contributor_Help_Pages" class="vector-menu mw-portlet mw-portlet-Contributor_Help_Pages" > <div class="vector-menu-heading"> Contributor Help Pages </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="n-Tasks-and-Tools" class="mw-list-item"><a href="http://userbase.kde.org/Special:myLanguage/Tasks_and_Tools" rel="nofollow"><span>Tasks and Tools</span></a></li><li id="n-Modify-a-page" class="mw-list-item"><a href="http://userbase.kde.org/Special:myLanguage/Ub-helpfiles-modify-redirect#Update_Existing_Content" rel="nofollow"><span>Modify a page</span></a></li><li id="n-Add-new-content" class="mw-list-item"><a href="http://userbase.kde.org/Special:myLanguage/Ub-helpfiles-new-content-redirect#Add_New_Pages" rel="nofollow"><span>Add new content</span></a></li><li id="n-Page-elements" class="mw-list-item"><a href="http://userbase.kde.org/Special:myLanguage/PageLayout" rel="nofollow"><span>Page elements</span></a></li><li id="n-Typographical-guidelines" class="mw-list-item"><a href="http://userbase.kde.org/Special:myLanguage/Typographical_Guidelines" rel="nofollow"><span>Typographical guidelines</span></a></li><li id="n-More-markup-help" class="mw-list-item"><a href="http://userbase.kde.org/Special:myLanguage/Toolbox" rel="nofollow"><span>More markup help</span></a></li> </ul> </div> </div> <div id="p-Translator_Help_Pages" class="vector-menu mw-portlet mw-portlet-Translator_Help_Pages" > <div class="vector-menu-heading"> Translator Help Pages </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="n-tb-get-trans-account" class="mw-list-item"><a href="/Special:MyLanguage/Translator_Account"><span>Get a Translator Account</span></a></li><li id="n-tb-languages-represented" class="mw-list-item"><a href="/Special:MyLanguage/Special:SupportedLanguages"><span>Languages represented</span></a></li><li id="n-tb-translation-workflow" class="mw-list-item"><a href="/Special:MyLanguage/Translation_Workflow"><span>Translation Workflow</span></a></li><li id="n-tb-trans-page" class="mw-list-item"><a href="/Special:MyLanguage/Translate_a_Page"><span>Translate a Page</span></a></li><li id="n-tb-offline-trans" class="mw-list-item"><a href="/Special:MyLanguage/Off-line_Translation"><span>Off-line Translation</span></a></li><li id="n-tb-trans-tool" class="mw-list-item"><a href="/Special:MyLanguage/Special:LanguageStats"><span>Translation Statistics</span></a></li><li id="n-tb-trans-help" class="mw-list-item"><a href="/Special:MyLanguage/Category:Translator_Help"><span>More Help pages</span></a></li> </ul> </div> </div> <div class="vector-main-menu-action vector-main-menu-action-lang-alert vector-main-menu-action-lang-alert-empty"> <div class="vector-main-menu-action-item"> <div class="vector-main-menu-action-heading vector-menu-heading">Languages</div> <div class="vector-main-menu-action-content vector-menu-content"> <div class="mw-message-box cdx-message cdx-message--block mw-message-box-notice cdx-message--notice vector-language-sidebar-alert"><span class="cdx-message__icon"></span><div class="cdx-message__content">Language links are at the top of the page across from the title.</div></div> </div> </div> </div> </div> </div> </div> </div> </nav> <a href="/Special:MyLanguage/Welcome_to_KDE_TechBase" class="mw-logo"> <span class="mw-logo-container"> <img class="mw-logo-wordmark" alt="KDE TechBase" src="/images/kde-logo-white-blue-source.svg" style="width: 2em; height: 2em;"> </span> </a> </div> <div class="vector-header-end"> <div id="p-search" role="search" class="vector-search-box-vue vector-search-box-collapses vector-search-box-show-thumbnail vector-search-box-auto-expand-width vector-search-box"> <a href="/Special:Search" class="cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only search-toggle" id="" title="Search KDE TechBase [f]" accesskey="f"><span class="vector-icon mw-ui-icon-search mw-ui-icon-wikimedia-search"></span> <span>Search</span> </a> <div class="vector-typeahead-search-container"> <div class="cdx-typeahead-search cdx-typeahead-search--show-thumbnail cdx-typeahead-search--auto-expand-width"> <form action="/index.php" id="searchform" class="cdx-search-input cdx-search-input--has-end-button"> <div id="simpleSearch" class="cdx-search-input__input-wrapper" data-search-loc="header-moved"> <div class="cdx-text-input cdx-text-input--has-start-icon"> <input class="cdx-text-input__input" type="search" name="search" placeholder="Search KDE TechBase" aria-label="Search KDE TechBase" autocapitalize="sentences" title="Search KDE TechBase [f]" accesskey="f" id="searchInput" > <span class="cdx-text-input__icon cdx-text-input__start-icon"></span> </div> <input type="hidden" name="title" value="Special:Search"> </div> <button class="cdx-button cdx-search-input__end-button">Search</button> </form> </div> </div> </div> <nav class="vector-user-links" aria-label="Personal tools" role="navigation" > <div id="p-vector-user-menu-overflow" class="vector-menu mw-portlet mw-portlet-vector-user-menu-overflow" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="ca-uls" class="user-links-collapsible-item mw-list-item active"><a href="#" class="uls-trigger cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet"><span class="vector-icon mw-ui-icon-wikimedia-language mw-ui-icon-wikimedia-wikimedia-language"></span> <span>English</span></a></li><li id="pt-login-2" class="user-links-collapsible-item mw-list-item"><a href="/index.php?title=Special:UserLogin&amp;returnto=Projects%2FKWin" title="You are encouraged to log in; however, it is not mandatory [o]" accesskey="o"><span>Log in</span></a></li> </ul> </div> </div> <div id="vector-user-links-dropdown" class="vector-dropdown vector-user-menu vector-button-flush-right vector-user-menu-logged-out" title="More options" > <input type="checkbox" id="vector-user-links-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-user-links-dropdown" class="vector-dropdown-checkbox " aria-label="Personal tools" > <label id="vector-user-links-dropdown-label" for="vector-user-links-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only " aria-hidden="true" ><span class="vector-icon mw-ui-icon-ellipsis mw-ui-icon-wikimedia-ellipsis"></span> <span class="vector-dropdown-label-text">Personal tools</span> </label> <div class="vector-dropdown-content"> <div id="p-personal" class="vector-menu mw-portlet mw-portlet-personal" title="User menu" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="pt-login" class="user-links-collapsible-item mw-list-item"><a href="/index.php?title=Special:UserLogin&amp;returnto=Projects%2FKWin" title="You are encouraged to log in; however, it is not mandatory [o]" accesskey="o"><span class="vector-icon mw-ui-icon-logIn mw-ui-icon-wikimedia-logIn"></span> <span>Log in</span></a></li> </ul> </div> </div> </div> </div> </nav> </div> </header> </div> <div class="mw-page-container"> <div class="mw-page-container-inner"> <div class="vector-sitenotice-container"> <div id="siteNotice"></div> </div> <div class="vector-main-menu-container"> <div id="mw-navigation"> <nav id="mw-panel" class="vector-main-menu-landmark" aria-label="Site" role="navigation"> <div id="vector-main-menu-pinned-container" class="vector-pinned-container"> </div> </nav> </div> </div> <input type="checkbox" id="vector-toc-collapsed-checkbox" class="vector-menu-checkbox"> <nav id="mw-panel-toc" role="navigation" aria-label="Contents" data-event-name="ui.sidebar-toc" class="mw-table-of-contents-container vector-toc-landmark vector-sticky-pinned-container"> <div id="vector-toc-pinned-container" class="vector-pinned-container"> <div id="vector-toc" class="vector-toc vector-pinnable-element"> <div class="vector-pinnable-header vector-toc-pinnable-header vector-pinnable-header-pinned" data-feature-name="toc-pinned" data-pinnable-element-id="vector-toc" > <h2 class="vector-pinnable-header-label">Contents</h2> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-pin-button" data-event-name="pinnable-header.vector-toc.pin">move to sidebar</button> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-unpin-button" data-event-name="pinnable-header.vector-toc.unpin">hide</button> </div> <ul class="vector-toc-contents" id="mw-panel-toc-list"> <li id="toc-mw-content-text" class="vector-toc-list-item vector-toc-level-1"> <a href="#" class="vector-toc-link"> <div class="vector-toc-text">Beginning</div> </a> </li> <li id="toc-General_information" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#General_information"> <div class="vector-toc-text"> <span class="vector-toc-numb">1</span>General information</div> </a> <ul id="toc-General_information-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Developer_information" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#Developer_information"> <div class="vector-toc-text"> <span class="vector-toc-numb">2</span>Developer information</div> </a> <ul id="toc-Developer_information-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Configuration" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#Configuration"> <div class="vector-toc-text"> <span class="vector-toc-numb">3</span>Configuration</div> </a> <ul id="toc-Configuration-sublist" class="vector-toc-list"> </ul> </li> </ul> </div> </div> </nav> <div class="mw-content-container"> <main id="content" class="mw-body" role="main"> <header class="mw-body-header vector-page-titlebar"> <label id="vector-toc-collapsed-button" class="cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet vector-button-flush-left cdx-button--icon-only" for="vector-toc-collapsed-checkbox" role="button" aria-controls="vector-toc" tabindex="0" title="Table of Contents"> <span class="vector-icon mw-ui-icon-wikimedia-listBullet"></span> <span>Toggle the table of contents</span> </label> <nav role="navigation" aria-label="Contents" class="vector-toc-landmark"> <div id="vector-page-titlebar-toc" class="vector-dropdown vector-page-titlebar-toc vector-button-flush-left" > <input type="checkbox" id="vector-page-titlebar-toc-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-page-titlebar-toc" class="vector-dropdown-checkbox " aria-label="Toggle the table of contents" > <label id="vector-page-titlebar-toc-label" for="vector-page-titlebar-toc-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only " aria-hidden="true" ><span class="vector-icon mw-ui-icon-listBullet mw-ui-icon-wikimedia-listBullet"></span> <span class="vector-dropdown-label-text">Toggle the table of contents</span> </label> <div class="vector-dropdown-content"> <div id="vector-page-titlebar-toc-unpinned-container" class="vector-unpinned-container"> </div> </div> </div> </nav> <h1 id="firstHeading" class="firstHeading mw-first-heading"><span class="mw-page-title-main">Projects/KWin</span></h1> </header> <div class="vector-page-toolbar"> <div class="vector-page-toolbar-container"> <div id="left-navigation"> <nav aria-label="Namespaces"> <div id="p-associated-pages" class="vector-menu vector-menu-tabs mw-portlet mw-portlet-associated-pages" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="ca-nstab-main" class="selected vector-tab-noicon mw-list-item"><a href="/Projects/KWin" title="View the content page [c]" accesskey="c"><span>Page</span></a></li><li id="ca-talk" class="new vector-tab-noicon mw-list-item"><a href="/index.php?title=Talk:Projects/KWin&amp;action=edit&amp;redlink=1" rel="discussion" title="Discussion about the content page (page does not exist) [t]" accesskey="t"><span>Discussion</span></a></li> </ul> </div> </div> <div id="p-variants" class="vector-dropdown emptyPortlet" > <input type="checkbox" id="p-variants-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-p-variants" class="vector-dropdown-checkbox " aria-label="Change language variant" > <label id="p-variants-label" for="p-variants-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet" aria-hidden="true" ><span class="vector-dropdown-label-text">English</span> </label> <div class="vector-dropdown-content"> <div id="p-variants" class="vector-menu mw-portlet mw-portlet-variants emptyPortlet" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> </ul> </div> </div> </div> </div> </nav> </div> <div id="right-navigation" class="vector-collapsible"> <nav aria-label="Views"> <div id="p-views" class="vector-menu vector-menu-tabs mw-portlet mw-portlet-views" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="ca-view" class="selected vector-tab-noicon mw-list-item"><a href="/Projects/KWin"><span>Read</span></a></li><li id="ca-viewsource" class="vector-tab-noicon mw-list-item"><a href="/index.php?title=Projects/KWin&amp;action=edit" title="This page is protected.&#10;You can view its source [e]" accesskey="e"><span>View source</span></a></li><li id="ca-history" class="vector-tab-noicon mw-list-item"><a href="/index.php?title=Projects/KWin&amp;action=history" title="Past revisions of this page [h]" accesskey="h"><span>View history</span></a></li> </ul> </div> </div> </nav> <nav class="vector-page-tools-landmark" aria-label="Page tools"> <div id="vector-page-tools-dropdown" class="vector-dropdown vector-page-tools-dropdown" > <input type="checkbox" id="vector-page-tools-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-page-tools-dropdown" class="vector-dropdown-checkbox " aria-label="Tools" > <label id="vector-page-tools-dropdown-label" for="vector-page-tools-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet" aria-hidden="true" ><span class="vector-dropdown-label-text">Tools</span> </label> <div class="vector-dropdown-content"> <div id="vector-page-tools-unpinned-container" class="vector-unpinned-container"> <div id="vector-page-tools" class="vector-page-tools vector-pinnable-element"> <div class="vector-pinnable-header vector-page-tools-pinnable-header vector-pinnable-header-unpinned" data-feature-name="page-tools-pinned" data-pinnable-element-id="vector-page-tools" data-pinned-container-id="vector-page-tools-pinned-container" data-unpinned-container-id="vector-page-tools-unpinned-container" > <div class="vector-pinnable-header-label">Tools</div> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-pin-button" data-event-name="pinnable-header.vector-page-tools.pin">move to sidebar</button> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-unpin-button" data-event-name="pinnable-header.vector-page-tools.unpin">hide</button> </div> <div id="p-cactions" class="vector-menu mw-portlet mw-portlet-cactions emptyPortlet vector-has-collapsible-items" title="More options" > <div class="vector-menu-heading"> Actions </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="ca-more-view" class="selected vector-more-collapsible-item mw-list-item"><a href="/Projects/KWin"><span>Read</span></a></li><li id="ca-more-viewsource" class="vector-more-collapsible-item mw-list-item"><a href="/index.php?title=Projects/KWin&amp;action=edit"><span>View source</span></a></li><li id="ca-more-history" class="vector-more-collapsible-item mw-list-item"><a href="/index.php?title=Projects/KWin&amp;action=history"><span>View history</span></a></li> </ul> </div> </div> <div id="p-tb" class="vector-menu mw-portlet mw-portlet-tb" > <div class="vector-menu-heading"> General </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="t-whatlinkshere" class="mw-list-item"><a href="/Special:WhatLinksHere/Projects/KWin" title="A list of all wiki pages that link here [j]" accesskey="j"><span>What links here</span></a></li><li id="t-recentchangeslinked" class="mw-list-item"><a href="/Special:RecentChangesLinked/Projects/KWin" rel="nofollow" title="Recent changes in pages linked from this page [k]" accesskey="k"><span>Related changes</span></a></li><li id="t-specialpages" class="mw-list-item"><a href="/Special:SpecialPages" title="A list of all special pages [q]" accesskey="q"><span>Special pages</span></a></li><li id="t-print" class="mw-list-item"><a href="javascript:print();" rel="alternate" title="Printable version of this page [p]" accesskey="p"><span>Printable version</span></a></li><li id="t-permalink" class="mw-list-item"><a href="/index.php?title=Projects/KWin&amp;oldid=106882" title="Permanent link to this revision of this page"><span>Permanent link</span></a></li><li id="t-info" class="mw-list-item"><a href="/index.php?title=Projects/KWin&amp;action=info" title="More information about this page"><span>Page information</span></a></li> </ul> </div> </div> </div> </div> </div> </div> </nav> </div> </div> </div> <div class="vector-column-end"> <nav class="vector-page-tools-landmark vector-sticky-pinned-container" aria-label="Page tools"> <div id="vector-page-tools-pinned-container" class="vector-pinned-container"> </div> </nav> </div> <div id="bodyContent" class="vector-body" aria-labelledby="firstHeading" data-mw-ve-target-container> <div class="vector-body-before-content"> <div class="mw-indicators"> </div> <div id="siteSub" class="noprint">From KDE TechBase</div> </div> <div id="contentSub"><div id="mw-content-subtitle"><div class="subpages">&lt; <a href="/Projects" title="Projects">Projects</a></div></div></div> <div id="mw-content-text" class="mw-body-content mw-content-ltr" lang="en" dir="ltr"><div class="mw-parser-output"><p><br /> </p><p><b>This is a starting page for all relevant KWin documentation, most of which is stored in git or on external WWW pages.</b> </p> <h2><span class="mw-headline" id="General_information">General information</span></h2> <ul><li><a rel="nofollow" class="external text" href="https://mail.kde.org/mailman/listinfo/kwin">KWin mailing list</a></li> <li>IRC: #kde-kwin on irc.libera.chat</li> <li><a rel="nofollow" class="external text" href="https://projects.kde.org/projects/kde/kde-workspace/repository/revisions/master/entry/kwin/COMPLIANCE">COMPLIANCE</a> - a document on KWin's compliance to the window manager specifications <a rel="nofollow" class="external text" href="http://tronche.com/gui/x/icccm/">ICCCM</a> and <a rel="nofollow" class="external text" href="http://www.freedesktop.org/wiki/Specifications/wm-spec">EWMH</a> (also known as NETWM).</li> <li><a href="/Projects/KWin/4.0-release-notes" title="Projects/KWin/4.0-release-notes">KDE4.0 release notes</a> - information about changes and new features in KWin in KDE4.0</li> <li><a href="/Projects/KWin/Build_Options" title="Projects/KWin/Build Options">KWin Build Options</a> - documentation on the available build options for KWin.</li></ul> <h2><span class="mw-headline" id="Developer_information">Developer information</span></h2> <ul><li>For Developer Information see the <a rel="nofollow" class="external text" href="http://community.kde.org/KWin/">KWin Section</a> in the KDE Community Wiki</li> <li><a rel="nofollow" class="external free" href="http://api.kde.org/4.x-api/kde-workspace-apidocs/kwin/libkdecorations/html/index.html">http://api.kde.org/4.x-api/kde-workspace-apidocs/kwin/libkdecorations/html/index.html</a> libkdecoration API documentation] - API documentation for the library used for developing KWin decorations (the link points to documentation for the current development version).</li> <li><a rel="nofollow" class="external text" href="http://www.usermode.org/docs/kwintheme.html">KWin decorations HOWTO</a> - tutorial on writing KWin decorations. Based on KDE3.2 and as such slightly outdated, but it is still usable for newer versions. Note that current decorations should use KCommonDecoration class instead of KDecoration directly like this tutorial does.</li> <li><a rel="nofollow" class="external text" href="http://api.kde.org/4.x-api/kde-workspace-apidocs/kwin/libkwineffects/html/index.html">libkwineffects API documentation </a> - Documentation on API for compositing effects - currently needs to be done, developers interested in developing compositing effects for KWin are currently suggested to use source of already <a rel="nofollow" class="external text" href="https://projects.kde.org/projects/kde/kdebase/kde-workspace/repository/revisions/master/show/kwin/effects">existing effects shipped with KWin</a> and/or ask on the KWin mailing list if necessary. NOTE: This API is currently considered unstable and subject to change.</li> <li><a href="/Development/Tutorials/KWin/Scripting/API" title="Development/Tutorials/KWin/Scripting/API">Scripting API</a> and <a href="/Development/Tutorials/KWin/Scripting" title="Development/Tutorials/KWin/Scripting">KWin Scripting Tutorial</a></li> <li><a href="/Projects/KWin/Scripting_Update_Notes" title="Projects/KWin/Scripting Update Notes">Scripting Update Notes for version 4.9</a></li></ul> <h2><span class="mw-headline" id="Configuration">Configuration</span></h2> <ul><li><a rel="nofollow" class="external text" href="https://projects.kde.org/projects/kde/kde-workspace/repository/revisions/master/entry/kwin/CONFIGURING">CONFIGURING </a> - document on advanced KWin configuration (such as pre-configuring window-specific settings).</li></ul> <!-- NewPP limit report Cached time: 20241124034845 Cache expiry: 86400 Reduced expiry: false Complications: [] CPU time usage: 0.003 seconds Real time usage: 0.003 seconds Preprocessor visited node count: 14/1000000 Post鈥恊xpand include size: 0/2097152 bytes Template argument size: 0/2097152 bytes Highest expansion depth: 2/100 Expensive parser function count: 0/100 Unstrip recursion depth: 0/20 Unstrip post鈥恊xpand size: 0/5000000 bytes --> <!-- Transclusion expansion time report (%,ms,calls,template) 100.00% 0.000 1 -total --> <!-- Saved in parser cache with key techbase:pcache:idhash:6082-0!canonical and timestamp 20241124034845 and revision id 106882. Rendering was triggered because: page-view --> </div> <div class="printfooter" data-nosnippet="">Retrieved from "<a dir="ltr" href="https://techbase.kde.org/index.php?title=Projects/KWin&amp;oldid=106882">https://techbase.kde.org/index.php?title=Projects/KWin&amp;oldid=106882</a>"</div></div> <div id="catlinks" class="catlinks catlinks-allhidden" data-mw="interface"></div> </div> </main> </div> <div class="mw-footer-container"> <footer id="footer" class="mw-footer" role="contentinfo" > <ul id="footer-info"> <li id="footer-info-lastmod"> This page was last edited on 18 February 2022, at 09:38.</li> <li id="footer-info-copyright">Content is available under <a class="external" rel="nofollow" href="/KDE_TechBase:Copyrights">Creative Commons License SA 4.0</a> unless otherwise noted.</li> </ul> <ul id="footer-places"> <li id="footer-places-privacy"><a href="/KDE_TechBase:Privacy_policy">Privacy policy</a></li> <li id="footer-places-about"><a href="/KDE_TechBase:About">About KDE TechBase</a></li> <li id="footer-places-disclaimers"><a href="/KDE_TechBase:General_disclaimer">Disclaimers</a></li> </ul> <ul id="footer-icons" class="noprint"> <li id="footer-copyrightico"><a href="/KDE_TechBase:Copyrights"><img src="/resources/assets/licenses/gfdlcc.png" alt="Creative Commons License SA 4.0" width="88" height="31" loading="lazy"></a></li> <li id="footer-poweredbyico"><a href="https://www.mediawiki.org/"><img src="/resources/assets/poweredby_mediawiki_88x31.png" alt="Powered by MediaWiki" srcset="/resources/assets/poweredby_mediawiki_132x47.png 1.5x, /resources/assets/poweredby_mediawiki_176x62.png 2x" width="88" height="31" loading="lazy"></a></li> </ul> </footer> </div> </div> </div> <div class="vector-settings" id="p-dock-bottom"> <ul> <li> <button class="cdx-button cdx-button--icon-only vector-limited-width-toggle" id=""><span class="vector-icon mw-ui-icon-fullScreen mw-ui-icon-wikimedia-fullScreen"></span> <span>Toggle limited content width</span> </button> </li> </ul> </div> <script>(RLQ=window.RLQ||[]).push(function(){mw.config.set({"wgBackendResponseTime":73,"wgPageParseReport":{"limitreport":{"cputime":"0.003","walltime":"0.003","ppvisitednodes":{"value":14,"limit":1000000},"postexpandincludesize":{"value":0,"limit":2097152},"templateargumentsize":{"value":0,"limit":2097152},"expansiondepth":{"value":2,"limit":100},"expensivefunctioncount":{"value":0,"limit":100},"unstrip-depth":{"value":0,"limit":20},"unstrip-size":{"value":0,"limit":5000000},"timingprofile":["100.00% 0.000 1 -total"]},"cachereport":{"timestamp":"20241124034845","ttl":86400,"transientcontent":false}}});});</script> <!-- Matomo --> <script type="text/javascript"> var _paq = _paq || []; _paq.push(["trackPageView"]); _paq.push(["enableLinkTracking"]); (function() { var u = (("https:" == document.location.protocol) ? "https" : "http") + "://"+"stats.kde.org/"; _paq.push(["setTrackerUrl", u+"piwik.php"]); _paq.push(["setSiteId", "24"]); var d=document, g=d.createElement("script"), s=d.getElementsByTagName("script")[0]; g.type="text/javascript"; g.defer=true; g.async=true; g.src=u+"piwik.js"; s.parentNode.insertBefore(g,s); })(); </script> <!-- End Matomo Code --> <!-- Matomo Image Tracker --> <noscript><img src="https://stats.kde.org/piwik.php?idsite=24&rec=1" style="border:0" alt="" /></noscript> <!-- End Matomo --> </body> </html>

Pages: 1 2 3 4 5 6 7 8 9 10