{"id":78262,"date":"2020-04-18T07:42:10","date_gmt":"2020-04-18T05:42:10","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/predstavlen-kwinft-fork-kwin-sfokusirovannyj-na-wayland"},"modified":"2020-04-18T07:42:10","modified_gmt":"2020-04-18T05:42:10","slug":"predstavlen-kwinft-fork-kwin-sfokusirovannyj-na-wayland","status":"publish","type":"post","link":"https:\/\/prohoster.info\/en\/blog\/news\/predstavlen-kwinft-fork-kwin-sfokusirovannyj-na-wayland","title":{"rendered":"KWinFT has been introduced, a fork of KWin focused on Wayland","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Roman Gilg, <noindex><a rel=\"nofollow\" href=\"https:\/\/subdiff.org\/projects\/\">participating<\/a><\/noindex> in the development of KDE, Wayland, Xwayland, and X Server, <noindex><a rel=\"nofollow\" href=\"https:\/\/subdiff.org\/blog\/2020\/the-k-win-ft-project\/\">presented<\/a><\/noindex> project <noindex><a rel=\"nofollow\" href=\"https:\/\/gitlab.com\/kwinft\/kwinft\">KWinFT<\/a><\/noindex> (KWin Fast Track), developing a flexible and easy-to-use composite window manager for Wayland and X11, based on the source code <noindex><a rel=\"nofollow\" href=\"https:\/\/userbase.kde.org\/KWin\">KWin.<\/a><\/noindex>In addition to the window manager, the project also develops the library <noindex><a rel=\"nofollow\" href=\"https:\/\/gitlab.com\/kwinft\/wrapland\">wrapland<\/a><\/noindex> with an implementation of a wrapper over libwayland for Qt\/C++, continuing the development of  <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/KDE\/kwayland\">KWayland,<\/a><\/noindex>but freed from the confines of Qt. The code is distributed under the GPLv2 and LGPLv2 licenses.<\/p>\n<p>The goal of the project is to redesign KWin and KWayland using<br \/>\nmodern technologies and development practices that will speed up project advancement, refactor the code, add optimizations, and simplify the incorporation of fundamental innovations, the integration of which into KWin in its current form is complicated. KWinFT and Wrapland can be used for seamless replacement of KWin and KWayland, but they are not confined by the limitations imposed on KWin by many products, where maintaining full compatibility takes priority, hindering the advancement of innovations.<\/p>\n<p>In KWinFT, developers have the freedom to experiment with new features while ensuring stability through the application of more modern development techniques. For example, to check the KWinFT code, a continuous integration system is utilized, including checks using various linters, automated build generation, and extensive testing. Regarding functional development, the primary focus in KWinFT will be on providing comprehensive and quality support for the<br \/>\nWayland protocol, including redesigning architectural features of KWin that complicate integration with Wayland.<\/p>\n<p>Among the already added experimental innovations in KWinFT are:<\/p>\n<ul>\n<li class=\"l\"> The compositing process has been reworked, resulting in significantly improved rendering of content under X11 and Wayland. Additionally, a timer has been added to minimize delays between image creation and display on screen.\n<li class=\"l\"> The Wayland protocol extension has been implemented &#171;<noindex><a rel=\"nofollow\" href=\"https:\/\/cgit.freedesktop.org\/wayland\/wayland-protocols\/tree\/stable\/viewporter\">viewporter<\/a><\/noindex>&#171;, allowing the client to perform scaling and cropping operations on the surface from the server side. Combined with the next significant release, the XWayland extension will enable emulation of screen resolution change for older games.\n<li class=\"l\"> Full support for rotation and mirroring of output for Wayland-based sessions.\n<\/ul>\n<p>Wrapland features a Qt-style designed interface that provides access to libwayland functions in a user-friendly manner for C++ projects. Initially, Wrapland was planned to be developed as a fork of KWayland, but due to unsatisfactory code quality in KWayland, it is now viewed as a complete overhaul project of KWayland. The most significant difference between Wrapland and KWayland is the removal of dependency on Qt, allowing its standalone use without installing Qt. In the future, Wrapland could serve as a universal library with a C++ API, freeing developers from the necessity of using the libwayland C API.<\/p>\n<p>Pre-packaged versions have been created for Manjaro Linux users. To engage KWinFT, just install it from the kwinft repository, and to revert to the default KWin &#8212; install the kwin package. The use of Wrapland is not limited to KDE; for example, a client implementation has been prepared for use in <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/swaywm\/wlroots\">wlroots<\/a><\/noindex> output management protocol, allowing composite servers based on wlroots (<noindex><a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=52239\">Sway<\/a><\/noindex>,  <noindex><a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=52586\">Wayfire<\/a><\/noindex>) to use KScreen for output configuration.<\/p>\n<p>Meanwhile, <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/tildearrow\/kwin-lowlatency\/releases\">updates for the project continue to<\/a><\/noindex> be released. <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/tildearrow\/kwin-lowlatency\">KWin-lowlatency<\/a><\/noindex>, which shapes a version of the KWin composite manager with patches for increased interface responsiveness and fixes to certain issues related to user action delay, such as input lag. To provide protection against tearing in output without negatively impacting responsiveness, KWin-lowlatency supports the use of glXWaitVideoSync, glFinish, or NVIDIA VSync in addition to DRM VBlank (the tearing protection originally present in KWin is implemented using a timer and can lead to significant delays (up to 50ms) in output, resulting in input reaction delays). New releases of KWin-lowlatency can be used instead of the standard composite server in KDE Plasma 5.18.<\/p>\n<p><noindex><a rel=\"nofollow\" name=\"link\"><\/a><\/noindex><\/p>\n<p>Source: <a \ncontent=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=52754\">opennet.ru<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0420\u043e\u043c\u0430\u043d \u0413\u0438\u043b\u0433 (Roman Gilg), \u0443\u0447\u0430\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0439 \u0432 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0435 KDE, Wayland, Xwayland \u0438 X Server, \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u043b \u043f\u0440\u043e\u0435\u043a\u0442 KWinFT (KWin Fast Track), \u0440\u0430\u0437\u0432\u0438\u0432\u0430\u044e\u0449\u0438\u0439 \u0433\u0438\u0431\u043a\u0438\u0439 \u0438 \u043f\u0440\u043e\u0441\u0442\u043e\u0439 \u0432 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0438 \u043a\u043e\u043c\u043f\u043e\u0437\u0438\u0442\u043d\u044b\u0439 \u043e\u043a\u043e\u043d\u043d\u044b\u0439 \u043c\u0435\u043d\u0435\u0434\u0436\u0435\u0440 \u0434\u043b\u044f Wayland \u0438 X11, \u043e\u0441\u043d\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u043d\u0430 \u043a\u043e\u0434\u043e\u0432\u043e\u0439 \u0431\u0430\u0437\u0435 KWin. \u041f\u043e\u043c\u0438\u043c\u043e \u043e\u043a\u043e\u043d\u043d\u043e\u0433\u043e \u043c\u0435\u043d\u0435\u0434\u0436\u0435\u0440\u0430 \u043f\u0440\u043e\u0435\u043a\u0442 \u0442\u0430\u043a\u0436\u0435 \u0440\u0430\u0437\u0432\u0438\u0432\u0430\u0435\u0442 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0443 wrapland \u0441 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0435\u0439 \u043e\u0431\u0432\u044f\u0437\u043a\u0438 \u043d\u0430\u0434 libwayland \u0434\u043b\u044f Qt\/C++, \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0430\u044e\u0449\u0435\u0439 \u0440\u0430\u0437\u0432\u0438\u0442\u0438\u0435 KWayland, [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-78262","post","type-post","status-publish","format-standard","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.1.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0420\u043e\u043c\u0430\u043d \u0413\u0438\u043b\u0433 (Roman Gilg), \u0443\u0447\u0430\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0439 \u0432 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0435 KDE, Wayland, Xwayland \u0438 X Server,\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/en\/blog\/news\/predstavlen-kwinft-fork-kwin-sfokusirovannyj-na-wayland\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.1.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"en_US\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u041f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d KWinFT, \u0444\u043e\u0440\u043a KWin, \u0441\u0444\u043e\u043a\u0443\u0441\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u043d\u0430 Wayland | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0420\u043e\u043c\u0430\u043d \u0413\u0438\u043b\u0433 (Roman Gilg), \u0443\u0447\u0430\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0439 \u0432 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0435 KDE, Wayland, Xwayland \u0438 X Server,\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/en\/blog\/news\/predstavlen-kwinft-fork-kwin-sfokusirovannyj-na-wayland\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2020-04-18T05:42:10+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-04-18T05:42:10+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47KWinFT, a fork of KWin focused on Wayland, has been introduced | ProHoster","description":"Roman Gilg, who participates in the development of KDE, Wayland, Xwayland, and X Server,","canonical_url":"https:\/\/prohoster.info\/en\/blog\/news\/predstavlen-kwinft-fork-kwin-sfokusirovannyj-na-wayland","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"en_US","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u041f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d KWinFT, \u0444\u043e\u0440\u043a KWin, \u0441\u0444\u043e\u043a\u0443\u0441\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u043d\u0430 Wayland | ProHoster","og:description":"\u0420\u043e\u043c\u0430\u043d \u0413\u0438\u043b\u0433 (Roman Gilg), \u0443\u0447\u0430\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0439 \u0432 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0435 KDE, Wayland, Xwayland \u0438 X Server,","og:url":"https:\/\/prohoster.info\/en\/blog\/news\/predstavlen-kwinft-fork-kwin-sfokusirovannyj-na-wayland","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2020-04-18T05:42:10+00:00","article:modified_time":"2020-04-18T05:42:10+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"78262","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 17:02:44","updated":"2022-10-02 17:05:30","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/posts\/78262","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/comments?post=78262"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/posts\/78262\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/media?parent=78262"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/categories?post=78262"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/tags?post=78262"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}