Planet KDE | Englishhttps://planet.kde.org/Planet KDE | Englishhttps://planet.kde.org/Planet KDEhttps://planet.kde.org/img/planet.png4848Hugo -- gohugo.ioen2024-03-18T06:00:00+00:00How to write a QML effect for KWinhttps://blog.vladzahorodnii.com/2024/03/18/how-to-write-a-qml-effect-for-kwin/Mon, 18 Mar 2024 06:00:00 +0000https://blog.vladzahorodnii.com/?p=818<p>Since the dawn of the times, the only way to implement any effect that has fancy user interface used to be in C++. It would be rather an understatement to say that the C++ API is difficult to use or get it right so there are no glitches. On the other hand, it would be really nice to be able to implement dashboard-like effects while not compromise on code simplicity and maintainability, especially given the rise of popularity of overview effects a few years ago, which indicated that there is demand for such effects.</p> <p>In order solve that problem, we started looking for some options and the most obvious one was QtQuick. It&#8217;s a quite powerful framework and it&#8217;s already used extensively in Plasma. So, in Plasma 5.24, we introduced basic support for implementing kwin effects written in QML and even added a new overview effect. Unfortunately, if you wanted to implement a QtQuick-based effect yourself, you would still have to write a bit of C++ glue yourself. This is not great because effects that use C++ are a distribution nightmare. They can&#8217;t be just uploaded to the KDE Store and then installed by clicking &#8220;Get New Effects&#8230;&#8221;. Furthermore, libkwin is a fast moving target with lots of ABI and API incompatible changes in every release. That&#8217;s not good if you&#8217;re an effect developer because it means you will need to invest a bit of time after every plasma release to port the effects to the new APIs or at least rebuild the effects to resolve ABI incompatibilities.</p> <p>This has been changed in Plasma 6.0.</p> <p>In Plasma 6, we&#8217;ve had the opportunity to address that pesky problem of requiring some C++ code and also improve the declarative effect API after learning some lessons while working on the overview and other effects. So, enough of history and let&#8217;s jump to the good stuff, shall we? <img src="https://s.w.org/images/core/emoji/14.0.0/72x72/1f642.png" alt="🙂" class="wp-smiley" style="height: 1em; max-height: 1em;" /></p> <h2 class="wp-block-heading">Project Structure</h2> <p>Declarative effects require some particular project structure that we need to learn first before writing any code</p> <pre class="wp-block-preformatted">└── package<br> ├── contents<br> │&nbsp;&nbsp; └── ui<br> │&nbsp;&nbsp; └── main.qml<br> └── metadata.json</pre> <p>The <code>package</code> directory is a toplevel directory, it should contain two things: a <code>metadata.json</code> file and a <code>contents</code> directory. The <code>metadata.json</code> file contains information about the name of the effect, what API it uses, the author, etc.</p> <pre class="wp-block-preformatted">&#123;<br> "KPackageStructure": "KWin/Effect",<br> "KPlugin": &#123;<br> "Authors": [<br> &#123;<br> "Email": "user@example.com",<br> "Name": "Name"<br> }<br> ],<br> "Category": "Appearance",<br> "Description": "Yo",<br> "EnabledByDefault": false,<br> "Id": "hello-world",<br> "License": "MIT",<br> "Name": "Hello World"<br> },<br> "X-KDE-Ordering": 60,<br> "X-Plasma-API": "declarativescript"<br>}</pre> <p>The <code>contents</code> directory contains the rest of QML code, config files, assets, etc. Keep in mind that <code>ui/main.qml</code> is a &#8220;magical&#8221; file, it acts as an entry point, every effect must have it.</p> <p>In order to install the effect and make it visible in Desktop Effects settings, you will need to run the following command</p> <pre class="wp-block-preformatted">kpackagetool6 --type KWin/Effect --install package/</pre> <p>This is quite a lot to memorize. That&#8217;s why kwin provides an example qtquick effect that you can grab, tweak some metadata and you&#8217;re good to go. You can find the example project at <a target="_blank" href="https://invent.kde.org/plasma/kwin/-/tree/master/examples/quick-effect?ref_type=heads">https://invent.kde.org/plasma/kwin/-/tree/master/examples/quick-effect?ref_type=heads</a>. Note that the example project also contains a <code>CMakeLists.txt</code> file, which provides an alternative way to install the effect by the means of cmake, i.e. <code>make install</code> or <code>cmake --install builddir</code>.</p> <h2 class="wp-block-heading">Hello World</h2> <p>Let&#8217;s start with an effect that simply shows a hello world message on the screen:</p> <pre class="wp-block-code"><code>import QtQuick<br>import org.kde.kwin<br><br>SceneEffect &#123;<br> id: effect<br><br> delegate: Rectangle &#123;<br> color: "blue"<br><br> Text &#123;<br> anchors.centerIn: parent<br> color: "white"<br> text: "Hello world!"<br> }<br> }<br><br> ScreenEdgeHandler &#123;<br> enabled: true<br> edge: ScreenEdgeHandler.TopEdge<br> onActivated: effect.visible = !effect.visible<br> }<br><br> ShortcutHandler &#123;<br> name: "Toggle Hello World Effect"<br> text: "Toggle Hello World Effect"<br> sequence: "Meta+H"<br> onActivated: effect.visible = !effect.visible<br> }<br><br> PinchGestureHandler &#123;<br> direction: PinchGestureHandler.Direction.Contracting<br> fingerCount: 3<br> onActivated: effect.visible = !effect.visible<br> }<br>}</code></pre> <p><code>import QtQuick</code> is needed to use basic QtQuick components such as <code>Rectangle</code>. <code>import org.kde.kwin</code> imports kwin specific components.</p> <p>The <code>SceneEffect</code> is a special type that every declarative effect must use. Its <code>delegate</code> property specifies the content for every screen. In this case, it&#8217;s a blue rectangle with a &#8220;Hello World!&#8221; label in the center.</p> <p>The <code>ShortcutHandler</code> is a helper that&#8217;s used to register global shortcuts. <code>ShortcutHandler.name</code> is the key of the global shortcut, it&#8217;s going to be used to store the shortcut in the config and other similar purposes. <code>ShortcutHandler.text</code> is a human readable description of the global shortcut, it&#8217;s going to be visible in the Shortcuts settings.</p> <p>The <code>ScreenEdgeHandler</code> allows to reserve a screen edge. When the pointer hits that screen edge, some code can be executed by listening to the <code>activated</code> signal.</p> <p>The <code>PinchGestureHandler</code> and <code>SwipeGestureHandler</code> allow to execute some code when the user makes a pinch or a swipe gesture, respectively.</p> <p><code>effect.visible = !effect.visible</code> toggles the visibility of the effect. When <code>effect.visible</code> is <code>true</code>, the effect is active and visible on the screen; otherwise it&#8217;s hidden. You need to set <code>effect.visible</code> to <code>true</code> in order to show the effect.</p> <p>If you press <code>Meta+H</code> or make a pinch gesture or move the pointer to the top screen edge, you&#8217;re going to see something like this</p> <figure class="wp-block-image size-large"><img fetchpriority="high" decoding="async" width="660" height="495" data-attachment-id="838" data-permalink="https://blog.vladzahorodnii.com/2024/03/18/how-to-write-a-qml-effect-for-kwin/screenshot_20240317_170123/" data-orig-file="https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240317_170123.png?fit=1280%2C960&amp;ssl=1" data-orig-size="1280,960" data-comments-opened="1" data-image-meta="&#123;&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="Screenshot_20240317_170123" data-image-description="" data-image-caption="" data-medium-file="https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240317_170123.png?fit=300%2C225&amp;ssl=1" data-large-file="https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240317_170123.png?fit=660%2C495&amp;ssl=1" src="https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240317_170123.png?resize=660%2C495&#038;ssl=1" alt="" class="wp-image-838" srcset="https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240317_170123.png?resize=1024%2C768&amp;ssl=1 1024w, https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240317_170123.png?resize=300%2C225&amp;ssl=1 300w, https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240317_170123.png?resize=768%2C576&amp;ssl=1 768w, https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240317_170123.png?resize=1200%2C900&amp;ssl=1 1200w, https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240317_170123.png?resize=800%2C600&amp;ssl=1 800w, https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240317_170123.png?resize=600%2C450&amp;ssl=1 600w, https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240317_170123.png?resize=400%2C300&amp;ssl=1 400w, https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240317_170123.png?resize=200%2C150&amp;ssl=1 200w, https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240317_170123.png?resize=363%2C272&amp;ssl=1 363w, https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240317_170123.png?w=1280&amp;ssl=1 1280w" sizes="(max-width: 660px) 100vw, 660px" data-recalc-dims="1" /></figure> <p></p> <p>Note that there are no windows visible anymore, it is the responsibility of the effect to decide what should be displayed on the screen now.</p> <h2 class="wp-block-heading">Displaying Windows</h2> <p>Being able to display text is great, but it&#8217;s not useful. Usually, effects need to display some windows, so let&#8217;s display the active window</p> <pre class="wp-block-code"><code> delegate: Rectangle &#123;<br> color: "blue"<br><br> WindowThumbnail &#123;<br> anchors.centerIn: parent<br> client: Workspace.activeWindow<br> }<br> }</code></pre> <p>The change is quite simple. Instead of displaying a <code>Text</code> component, there&#8217;s a <code>WindowThumbnail</code> component now. The <code>WindowThumbnail</code> type is provided by the <code>org.kde.kwin</code> module. <code>WindowThumbnail.client</code> indicates what window the thumbnail item should display.</p> <figure class="wp-block-image size-large"><img decoding="async" width="660" height="495" data-attachment-id="842" data-permalink="https://blog.vladzahorodnii.com/2024/03/18/how-to-write-a-qml-effect-for-kwin/screenshot_20240317_172450/" data-orig-file="https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240317_172450.png?fit=1280%2C960&amp;ssl=1" data-orig-size="1280,960" data-comments-opened="1" data-image-meta="&#123;&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="Screenshot_20240317_172450" data-image-description="" data-image-caption="" data-medium-file="https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240317_172450.png?fit=300%2C225&amp;ssl=1" data-large-file="https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240317_172450.png?fit=660%2C495&amp;ssl=1" src="https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240317_172450.png?resize=660%2C495&#038;ssl=1" alt="" class="wp-image-842" srcset="https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240317_172450.png?resize=1024%2C768&amp;ssl=1 1024w, https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240317_172450.png?resize=300%2C225&amp;ssl=1 300w, https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240317_172450.png?resize=768%2C576&amp;ssl=1 768w, https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240317_172450.png?resize=1200%2C900&amp;ssl=1 1200w, https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240317_172450.png?resize=800%2C600&amp;ssl=1 800w, https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240317_172450.png?resize=600%2C450&amp;ssl=1 600w, https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240317_172450.png?resize=400%2C300&amp;ssl=1 400w, https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240317_172450.png?resize=200%2C150&amp;ssl=1 200w, https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240317_172450.png?resize=363%2C272&amp;ssl=1 363w, https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240317_172450.png?w=1280&amp;ssl=1 1280w" sizes="(max-width: 660px) 100vw, 660px" data-recalc-dims="1" /></figure> <p></p> <h2 class="wp-block-heading">Input</h2> <p>Input processing contains no kwin specific APIs. <code>TapHandler</code>, <code>MouseArea</code>, <code>Keys</code> and other stuff available in QtQuick should just work. For example, let&#8217;s implement an effect that arranges windows in a grid and if somebody middle clicks a window, it will be closed</p> <pre class="wp-block-code"><code> delegate: Rectangle &#123;<br> color: "pink"<br><br> GridView &#123;<br> id: grid<br> anchors.fill: parent<br> cellWidth: 300<br> cellHeight: 300<br><br> model: WindowModel &#123;}<br> delegate: WindowThumbnail &#123;<br> client: model.window<br> width: grid.cellWidth<br> height: grid.cellHeight<br><br> TapHandler &#123;<br> acceptedButtons: Qt.MiddleButton<br> onTapped: client.closeWindow()<br> }<br> }<br> }<br> }</code></pre> <p>The code looks pretty straightforward except maybe the model of the <code>GridView</code>. <code>WindowModel</code> is a helper provided by <code>org.kde.kwin</code> module that lists all the windows. It can be passed to various views, <code>Repeater</code>, and so on.</p> <p>The result can be seen here</p> <figure class="wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-4-3 wp-has-aspect-ratio"><div class="wp-block-embed__wrapper"> <iframe class="youtube-player" width="660" height="372" src="https://www.youtube.com/embed/lrAmDSjzhQ4?version=3&#038;rel=1&#038;showsearch=0&#038;showinfo=1&#038;iv_load_policy=1&#038;fs=1&#038;hl=en-US&#038;autohide=2&#038;wmode=transparent" allowfullscreen="true" style="border:0;" sandbox="allow-scripts allow-same-origin allow-popups allow-presentation allow-popups-to-escape-sandbox"></iframe> </div></figure> <p></p> <h2 class="wp-block-heading">Delegates are Per Screen</h2> <p>One thing to keep in mind is that the delegates are instantiated per screen. For example, </p> <pre class="wp-block-code"><code> delegate: Rectangle &#123;<br> color: "yellow"<br><br> Text &#123;<br> anchors.centerIn: parent<br> color: "black"<br> text: SceneView.screen.name<br> }<br> }</code></pre> <p>When you activate the effect on a setup with several outputs, each output will be filled with yellow color and the output name in the center</p> <figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="660" height="263" data-attachment-id="854" data-permalink="https://blog.vladzahorodnii.com/2024/03/18/how-to-write-a-qml-effect-for-kwin/screenshot_20240317_181544/" data-orig-file="https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240317_181544.png?fit=2643%2C1053&amp;ssl=1" data-orig-size="2643,1053" data-comments-opened="1" data-image-meta="&#123;&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="Screenshot_20240317_181544" data-image-description="" data-image-caption="" data-medium-file="https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240317_181544.png?fit=300%2C120&amp;ssl=1" data-large-file="https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240317_181544.png?fit=660%2C263&amp;ssl=1" src="https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240317_181544.png?resize=660%2C263&#038;ssl=1" alt="" class="wp-image-854" srcset="https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240317_181544.png?resize=1024%2C408&amp;ssl=1 1024w, https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240317_181544.png?resize=300%2C120&amp;ssl=1 300w, https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240317_181544.png?resize=768%2C306&amp;ssl=1 768w, https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240317_181544.png?resize=1536%2C612&amp;ssl=1 1536w, https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240317_181544.png?resize=2048%2C816&amp;ssl=1 2048w, https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240317_181544.png?resize=1200%2C478&amp;ssl=1 1200w, https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240317_181544.png?resize=683%2C272&amp;ssl=1 683w, https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240317_181544.png?w=1320&amp;ssl=1 1320w, https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240317_181544.png?w=1980&amp;ssl=1 1980w" sizes="(max-width: 660px) 100vw, 660px" data-recalc-dims="1" /></figure> <p></p> <p>Usually, the output is irrelevant, but if you need to know what output particular delegate is displayed on, you could use the <code>SceneView.screen</code> attached property.</p> <h2 class="wp-block-heading">Configuration</h2> <p>As your effect grows, you will probably face the need to provide an option or two. Let&#8217;s say that we want the background color in our hello world effect to be configurable. How do we achieve that? The first step, is to add a <code>main.xml</code> file in <code>package/contents/config</code> directory, i.e.</p> <pre class="wp-block-preformatted">package/<br>├── contents<br>│   ├── config<br>│   │   └── <strong>main.xml</strong><br>│   └── ui<br>│   └── main.qml<br>└── metadata.json<br></pre> <p>The <code>main.xml</code> file lists all options</p> <pre class="wp-block-preformatted">&lt;?xml version="1.0" encoding="UTF-8"?><br>&lt;kcfg xmlns="http://www.kde.org/standards/kcfg/1.0"<br> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"<br> xsi:schemaLocation="http://www.kde.org/standards/kcfg/1.0<br> http://www.kde.org/standards/kcfg/1.0/kcfg.xsd" ><br> &lt;kcfgfile name=""/><br> &lt;group name=""><br> &lt;entry name="BackgroundColor" type="Color"><br> &lt;default>#ff00ff&lt;/default><br> &lt;/entry><br> &lt;/group><br>&lt;/kcfg></pre> <p>In our case, only one option is needed: <code>BackgroundColor</code>, which has <code>Color</code> type and <code>#ff00ff</code> default value. You can refer to the <a target="_blank" href="https://develop.kde.org/docs/features/configuration/kconfig_xt/">KConfigXT</a> documentation to learn more what other entry types are supported.</p> <p>The next step is to actually use the <code>BackgroundColor</code> option</p> <pre class="wp-block-code"><code> delegate: Rectangle &#123;<br> color: effect.configuration.BackgroundColor<br><br> Text &#123;<br> anchors.centerIn: parent<br> color: "white"<br> text: "Hello world!"<br> }<br> }</code></pre> <p><code>effect.configuration</code> is a map object that contains all the options listed in the <code>main.xml</code>.</p> <p>Now, if you toggle the hello world effect, you&#8217;re going to see</p> <figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="660" height="495" data-attachment-id="890" data-permalink="https://blog.vladzahorodnii.com/2024/03/18/how-to-write-a-qml-effect-for-kwin/screenshot_20240318_000709/" data-orig-file="https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240318_000709.png?fit=1280%2C960&amp;ssl=1" data-orig-size="1280,960" data-comments-opened="1" data-image-meta="&#123;&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="Screenshot_20240318_000709" data-image-description="" data-image-caption="" data-medium-file="https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240318_000709.png?fit=300%2C225&amp;ssl=1" data-large-file="https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240318_000709.png?fit=660%2C495&amp;ssl=1" src="https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240318_000709.png?resize=660%2C495&#038;ssl=1" alt="" class="wp-image-890" srcset="https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240318_000709.png?resize=1024%2C768&amp;ssl=1 1024w, https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240318_000709.png?resize=300%2C225&amp;ssl=1 300w, https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240318_000709.png?resize=768%2C576&amp;ssl=1 768w, https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240318_000709.png?resize=1200%2C900&amp;ssl=1 1200w, https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240318_000709.png?resize=800%2C600&amp;ssl=1 800w, https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240318_000709.png?resize=600%2C450&amp;ssl=1 600w, https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240318_000709.png?resize=400%2C300&amp;ssl=1 400w, https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240318_000709.png?resize=200%2C150&amp;ssl=1 200w, https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240318_000709.png?resize=363%2C272&amp;ssl=1 363w, https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240318_000709.png?w=1280&amp;ssl=1 1280w" sizes="(max-width: 660px) 100vw, 660px" data-recalc-dims="1" /></figure> <p></p> <p>There are a few more thing left to do though. If you navigate to Desktop Effects settings, you&#8217;re not going a configure button next to the hello world effect</p> <figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="660" height="97" data-attachment-id="892" data-permalink="https://blog.vladzahorodnii.com/2024/03/18/how-to-write-a-qml-effect-for-kwin/screenshot_20240318_001125/" data-orig-file="https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240318_001125.png?fit=884%2C130&amp;ssl=1" data-orig-size="884,130" data-comments-opened="1" data-image-meta="&#123;&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="Screenshot_20240318_001125" data-image-description="" data-image-caption="" data-medium-file="https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240318_001125.png?fit=300%2C44&amp;ssl=1" data-large-file="https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240318_001125.png?fit=660%2C97&amp;ssl=1" src="https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240318_001125.png?resize=660%2C97&#038;ssl=1" alt="" class="wp-image-892" srcset="https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240318_001125.png?w=884&amp;ssl=1 884w, https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240318_001125.png?resize=300%2C44&amp;ssl=1 300w, https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240318_001125.png?resize=768%2C113&amp;ssl=1 768w" sizes="(max-width: 660px) 100vw, 660px" data-recalc-dims="1" /></figure> <p></p> <p>Besides providing a <code>main.xml</code> file, the effect also needs to provide a <code>config.ui</code> file containing a configuration ui</p> <pre class="wp-block-preformatted">package/<br>├── contents<br>│   ├── config<br>│   │   └── main.xml<br>│   └── ui<br>│   ├── <strong>config.ui</strong><br>│   └── main.qml<br>└── metadata.json</pre> <p>The <code>config.ui</code> file is a regular Qt Designer UI file. The only special thing about it is that the controls that represent options should have special name format: <code>kcfg_</code> + <code>OptionName</code>. For example, <code>kcfg_BackgroundColor</code></p> <pre class="wp-block-code"><code>&lt;?xml version="1.0" encoding="UTF-8"?><br>&lt;ui version="4.0"><br> &lt;class>QuickEffectConfig&lt;/class><br> &lt;widget class="QWidget" name="QuickEffectConfig"><br> &lt;property name="geometry"><br> &lt;rect><br> &lt;x>0&lt;/x><br> &lt;y>0&lt;/y><br> &lt;width>455&lt;/width><br> &lt;height>177&lt;/height><br> &lt;/rect><br> &lt;/property><br> &lt;layout class="QFormLayout" name="formLayout"><br> &lt;item row="0" column="0"><br> &lt;widget class="QLabel" name="label"><br> &lt;property name="text"><br> &lt;string>Background color:&lt;/string><br> &lt;/property><br> &lt;/widget><br> &lt;/item><br> &lt;item row="0" column="1"><br> &lt;widget class="KColorButton" name="kcfg_BackgroundColor"><br> &lt;property name="flat"><br> &lt;bool>false&lt;/bool><br> &lt;/property><br> &lt;/widget><br> &lt;/item><br> &lt;/layout><br> &lt;/widget><br> &lt;customwidgets><br> &lt;customwidget><br> &lt;class>KColorButton&lt;/class><br> &lt;extends>QPushButton&lt;/extends><br> &lt;header>kcolorbutton.h&lt;/header><br> &lt;/customwidget><br> &lt;/customwidgets><br> &lt;resources/><br> &lt;connections/><br>&lt;/ui></code></pre> <p>The last final piece in order to expose the configuration ui is to add the following line in the <code>metadata.json</code> file</p> <pre class="wp-block-preformatted">"X-KDE-ConfigModule": "kcm_kwin4_genericscripted"</pre> <p>With all of that, the effect is finally displayed as configurable in the system settings and the background color can be changed</p> <figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="660" height="252" data-attachment-id="897" data-permalink="https://blog.vladzahorodnii.com/2024/03/18/how-to-write-a-qml-effect-for-kwin/screenshot_20240318_002244/" data-orig-file="https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240318_002244.png?fit=1005%2C384&amp;ssl=1" data-orig-size="1005,384" data-comments-opened="1" data-image-meta="&#123;&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="Screenshot_20240318_002244" data-image-description="" data-image-caption="" data-medium-file="https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240318_002244.png?fit=300%2C115&amp;ssl=1" data-large-file="https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240318_002244.png?fit=660%2C252&amp;ssl=1" src="https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240318_002244.png?resize=660%2C252&#038;ssl=1" alt="" class="wp-image-897" srcset="https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240318_002244.png?w=1005&amp;ssl=1 1005w, https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240318_002244.png?resize=300%2C115&amp;ssl=1 300w, https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240318_002244.png?resize=768%2C293&amp;ssl=1 768w, https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240318_002244.png?resize=712%2C272&amp;ssl=1 712w" sizes="(max-width: 660px) 100vw, 660px" data-recalc-dims="1" /></figure> <h2 class="wp-block-heading">Sharing Your Effect With Other People</h2> <p>The preferred method to distribute third party extensions is via the <a target="_blank" href="https://store.kde.org/browse/">KDE Store</a>. Both JS and QML effects can be uploaded to the same &#8220;<a target="_blank" href="https://store.kde.org/browse?cat=719">KWin Effects</a>&#8221; category.</p> <h2 class="wp-block-heading">Documentation and Other Useful Resources</h2> <p>Documentation is still something that needs a lot of work (and writing it is no fun <img src="https://s.w.org/images/core/emoji/14.0.0/72x72/1f641.png" alt="🙁" class="wp-smiley" style="height: 1em; max-height: 1em;" /> ). KWin scripting API documentation can be found here <a target="_blank" href="https://develop.kde.org/docs/plasma/kwin/api/">https://develop.kde.org/docs/plasma/kwin/api/</a>.</p> <p>Besides the link above, it&#8217;s worth having a look at the examples <a target="_blank" href="https://invent.kde.org/plasma/kwin/-/tree/master/examples?ref_type=heads">https://invent.kde.org/plasma/kwin/-/tree/master/examples?ref_type=heads</a> in kwin git repository.</p> <h2 class="wp-block-heading">Window Heap</h2> <p>If you need to pack or arrange windows like how the overview effect does, you could use the <code>WindowHeap</code> component from <code>org.kde.kwin.private.effects</code> module. BUT you need to keep in mind that that helper is private and has no stable API yet, so use it on your own risk (or copy paste the relevant code in kwin). Eventually, the <code>WindowHeap</code> will be stabilized once we are confident about its API.</p> <p>The <code>WindowHeap</code> source code can be found at <a target="_blank" href="https://invent.kde.org/plasma/kwin/-/tree/2a13a330404c8d8a95f6264512aa06b0a560f55b/src/plugins/private">https://invent.kde.org/plasma/kwin/-/tree/2a13a330404c8d8a95f6264512aa06b0a560f55b/src/plugins/private</a>.</p> <h2 class="wp-block-heading">More Examples</h2> <p>If you need more examples, I suggest to have a look at the desktop cube effect in <code>kdeplasma-addons</code>. It&#8217;s implemented using the same QML effect API in kwin + QtQuick3D. The source code can be found at <a target="_blank" href="https://invent.kde.org/plasma/kdeplasma-addons/-/tree/master/kwin/effects/cube?ref_type=heads">https://invent.kde.org/plasma/kdeplasma-addons/-/tree/master/kwin/effects/cube?ref_type=heads</a></p> <figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="660" height="371" data-attachment-id="858" data-permalink="https://blog.vladzahorodnii.com/2024/03/18/how-to-write-a-qml-effect-for-kwin/screenshot_20240317_182738/" data-orig-file="https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240317_182738.png?fit=3840%2C2160&amp;ssl=1" data-orig-size="3840,2160" data-comments-opened="1" data-image-meta="&#123;&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="Screenshot_20240317_182738" data-image-description="" data-image-caption="" data-medium-file="https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240317_182738.png?fit=300%2C169&amp;ssl=1" data-large-file="https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240317_182738.png?fit=660%2C371&amp;ssl=1" src="https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240317_182738.png?resize=660%2C371&#038;ssl=1" alt="" class="wp-image-858" srcset="https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240317_182738.png?resize=1024%2C576&amp;ssl=1 1024w, https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240317_182738.png?resize=300%2C169&amp;ssl=1 300w, https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240317_182738.png?resize=768%2C432&amp;ssl=1 768w, https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240317_182738.png?resize=1536%2C864&amp;ssl=1 1536w, https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240317_182738.png?resize=2048%2C1152&amp;ssl=1 2048w, https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240317_182738.png?resize=1200%2C675&amp;ssl=1 1200w, https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240317_182738.png?resize=484%2C272&amp;ssl=1 484w, https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240317_182738.png?w=1320&amp;ssl=1 1320w, https://i0.wp.com/blog.vladzahorodnii.com/wp-content/uploads/2024/03/Screenshot_20240317_182738.png?w=1980&amp;ssl=1 1980w" sizes="(max-width: 660px) 100vw, 660px" data-recalc-dims="1" /></figure> <h2 class="wp-block-heading">Conclusion</h2> <p>I hope that some people find this quick introduction to QML-based effects in KWin useful. Despite being a couple years old, declarative effects can be still considered being in the infancy stage and there&#8217;s a lot of untapped potential in them yet. The QML effect API is not perfect, and that&#8217;s why we are interested in feedback from third party extension developers. If you have some questions or feedback, feel free to reach out us at <a target="_blank" href="https://webchat.kde.org/#/room/#kwin:kde.org">https://webchat.kde.org/#/room/#kwin:kde.org</a>. Happy hacking!</p>Vlad ZahorodniiSetting up a Toggleable Side Panel in KDE Plasma 6https://nathanupchurch.com/blog/kde-plasma-side-panel/Mon, 18 Mar 2024 00:00:00 +0000https://nathanupchurch.com/blog/kde-plasma-side-panel/<p>Since a brief tryst with <a target="_blank" href="https://ubuntubudgie.org/">Ubuntu Budgie Edition</a>, I’ve dearly missed its Raven side-panel, a special panel on the side of the screen that can be opened and closed with a click. As someone who <em>needs</em> a clean, minimal desktop, the workflow is just too perfect — when you have two or three widgets that you use frequently, but not frequently enough that they warrant permanent homes on a main panel, just stuff them into a disappearing side-panel that can be called with a quick key-combination or by clicking on an icon; It’s a great way to keep things out of the way, but within reach, without having a permanently cluttered system tray that you might want to keep clear for things like email notifications.</p> <figure><a target="_blank" href="https://nathanupchurch.com/img/sidePanel/sidePanel_copy.avif"><img src="https://nathanupchurch.com/img/sidePanel/sidePanel_copy.avif" alt="A cropped screenshot of my plasma desktop showing a side-panel on the right side of the screen containing the clipboard history widget and the media player widget. On the bottom panel is the Scriptinator plugin, showing a tooltip the following title &quot;Show Panel,&quot; and body text &quot;Show the hidden right panel."></a><figcaption>My side panel, and the widget that launches it.</figcaption></figure> <p>There are some drawbacks; this workflow isn’t well supported on KDE Plasma, so it’s a bit of a faff to set up, and only a few widgets will display nicely on a wide side-panel. For instance, it would be a dream to have the KDE weather widget automatically take advantage of the horizontal space and display the information that would usually be in its dropdown, but what you get instead is a giant icon, for now at least. I use my side-panel for my clipboard history and the media player widget, both of which play nicely with a side-panel. Another niggle I have with it is that, as far as I know, there’s no way to disable activation of the panel when your mouse pointer makes contact with the screen edge. This is a mild to moderate inconvenience when you’re working with applications that have toolbars on the sides of the window, like design applications often do.</p> <p>For me, personally, the drawbacks aren’t so severe as to put me off of the workflow.</p> <h2 id="creating-and-configuring-the-panel" tabindex="-1">Creating and configuring the panel <a class="header-anchor" target="_blank" href="https://nathanupchurch.com/blog/kde-plasma-side-panel/">#</a></h2> <p>First, you’ll need to create a panel. To do this, right click on an empty section of your desktop, and select “Add Panel &gt; Empty Panel.” When the panel appears, right click it and select “Enter Edit Mode.” Set up your panel however you like, but you will need to set “Visibility” to “Auto Hide” and may want to give it a width of at least 400px or so.</p> <figure><a target="_blank" href="https://nathanupchurch.com/img/sidePanel/panelSettings_copy.avif"><img src="https://nathanupchurch.com/img/sidePanel/panelSettings_copy.avif" alt=""></a><figcaption>The panel settings configuration window.</figcaption></figure> <h2 id="setting-up-the-script" tabindex="-1">Setting up the script <a class="header-anchor" target="_blank" href="https://nathanupchurch.com/blog/kde-plasma-side-panel/">#</a></h2> <p>Now, if you wanted to show and hide your panel with a keyboard shortcut, you can set up a focus shortcut in the panel settings window and stop here. If, like me, you want to toggle your panel by clicking on an icon somewhere, we’re going to have to use a wee script, but don’t worry, it’s not as hard as it sounds and I’ll take you through it step by step.</p> <p>Before we can put our script together, we’re going to need to know what the ID of our panel is. Open up KRunner with Alt+F2 or Alt+Space and run <code>plasma-interactiveconsole</code>. This will launch KDE’s Desktop Shell Scripting Console. In the console, type <code>print(panelIds);</code> and click “Execute.” Assuming you entered that in correctly, what you should see now in the output console beneath the text editor is a series of numbers — the ID numbers of our panels. Keep a note of these numbers.</p> <figure><a target="_blank" href="https://nathanupchurch.com/img/sidePanel/printIDs_copy.avif"><img src="https://nathanupchurch.com/img/sidePanel/printIDs_copy.avif" alt="The interactive console showing a series of panel IDs printed to the console."></a><figcaption>Look at those IDs.</figcaption></figure> <p>Clear the text editor and enter the following:</p> <pre class="language-javascript" tabindex="0"><code class="language-javascript"><span class="token keyword">let</span> panel <span class="token operator">=</span> <span class="token function">panelById</span><span class="token punctuation">(</span><span class="token number">401</span><span class="token punctuation">)</span><span class="token punctuation">;</span> panel<span class="token punctuation">.</span>hiding <span class="token operator">===</span> <span class="token string">"autohide"</span> <span class="token operator">?</span> panel<span class="token punctuation">.</span>hiding <span class="token operator">=</span> <span class="token string">"windowsgobelow"</span> <span class="token operator">:</span> panel<span class="token punctuation">.</span>hiding <span class="token operator">=</span> <span class="token string">"autohide"</span><span class="token punctuation">;</span></code></pre> <p>This will check if our panel is set to auto-hide; if it is, the script will set the panel to “windows go below” mode, otherwise it will set the panel to auto-hide.</p> <p>Now to make use of those panel ID numbers. Which number corresponds to your new side-panel? While I can’t be sure, chances are it’s the last number on the list as we’ve just made the new panel a moment ago. So in the script above, where I have entered 401, enter the last number in your ID list and click “Execute.” At this point, if the ID number is correct, your panel should appear; click “Execute” once more to hide it.</p> <h2 id="setting-up-the-scriptinator-widget" tabindex="-1">Setting up the Scriptinator widget <a class="header-anchor" target="_blank" href="https://nathanupchurch.com/blog/kde-plasma-side-panel/">#</a></h2> <p>Alright, we’ve got our script ready, so we just need one more thing in place: a button or icon that we can click on to show and hide the panel. Fortunately, we can use a widget called “Scriptinator” to provide just this. Right click on an empty area of your desktop or a panel, click “Add Widgets,” and “Get New Widgets.”</p> <figure><a target="_blank" href="https://nathanupchurch.com/img/sidePanel/getWidgets_copy.avif"><img src="https://nathanupchurch.com/img/sidePanel/getWidgets_copy.avif" alt="A cropped screenshot of the widgets panel with the &quot;get new widgets&quot; button at the top."></a><figcaption>Let’s get that widget.</figcaption></figure> <p>From here, find and install Scriptinator. Once installed, simply drag it where you’d like it to live, either on your desktop, or on a panel. Once you’ve done that, right click on the widget and choose “Configure Scriptinator.” Here, enter the path of the icon you’d like to use in “Custom icon full path;” I used <code>/usr/share/icons/breeze-dark/actions/22/sidebar-expand-right-symbolic.svg</code>. In “OnClick Script,” enter the following:</p> <pre class="language-bash" tabindex="0"><code class="language-bash">qdbus org.kde.plasmashell /PlasmaShell evaluateScript <span class="token string">''</span></code></pre> <p>and between those single-quote marks, paste in the full script we put together in the Desktop Shell Scripting Console, like this:</p> <pre class="language-bash" tabindex="0"><code class="language-bash">qdbus org.kde.plasmashell /PlasmaShell evaluateScript <span class="token string">'let panel = panelById(401); panel.hiding === "autohide" ? panel.hiding = "windowsgobelow" : panel.hiding = "autohide";'</span></code></pre> <figure><a target="_blank" href="https://nathanupchurch.com/img/sidePanel/Scriptinator_copy.avif"><img src="https://nathanupchurch.com/img/sidePanel/Scriptinator_copy.avif" alt=""></a><figcaption>The Scriptinator configuration window.</figcaption></figure> <p>Set up a tooltip if you like, hit apply, and test out your toggle button.</p> <h2 id="success" tabindex="-1">Success! <a class="header-anchor" target="_blank" href="https://nathanupchurch.com/blog/kde-plasma-side-panel/">#</a></h2> <p>If you’ve done everything correctly, you should see your side-panel appear when you click the widget and disappear when you click a second time. You may need to restart to see your icon applied to the widget; if you don’t want to wait, you can drop the file path into “OnClick icon full path” in your Scriptinator configuration.</p>Nathan UpchurchKile 2.9.95 / 3.0 beta 4 releasedhttps://gruenich.blogspot.com/2024/03/kile-2995-30-beta-4-released.htmlSun, 17 Mar 2024 20:25:00 +0000tag:blogger.com,1999:blog-1278761042581981080.post-5115765099750713668<p>We have a release of <a target="_blank" href="https://apps.kde.org/kile/">Kile</a> 2.9.95, also known as 3.0 beta 4! Earlier today, Michel Ludwig <a target="_blank" href="https://invent.kde.org/office/kile/-/tags/v3.0b4">tagged</a> the current Git master. This is the first beta release since October 2019. Beside the port to KDE Frameworks 6 and Qt 6, it provides a couple of new features and bug fixes.</p><p><img alt="Kile icon" aria-hidden="true" class="me-4" height="64" src="https://apps.kde.org/app-icons/org.kde.kile.svg" title="Kile" width="64" /></p><h3 style="text-align: left;">New features<br /></h3><ul style="text-align: left;"><li>Port to KDE Frameworks 6 &amp; Qt 6 (Port by Carl Schwan)</li><li>Enable high-dpi support</li><li>Provide option to hide menu bar (Patch by Daniel Fichtner, <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=372295">#372295</a>)</li><li>Configurable global default setting for the LivePreview engines (Patch by Florian Zumkeller-Quast, <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=450332">#450332</a>)</li><li>Remove offline copy of "LaTeX2e: An unofficial reference manual", use online version instead (Patch by myself, Christoph Grüninger, <a target="_blank" href="https://invent.kde.org/office/kile/-/issues/7" target="_blank">Issue #7</a>)<br /></li></ul><h3 style="text-align: left;">Fixed bugs</h3><ul style="text-align: left;"><li style="text-align: left;">Kile crashes on selecting "Browse" or "Zoom" for document preview (Patch by Carl Schwan, <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=465547">#465547</a>, #476207, #467435, #452618, #429452)</li><li style="text-align: left;">Kile crashes when generating new document (Patch by Carl Schwan, <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=436837">#436837</a>)</li><li style="text-align: left;">Ensure <span style="background-color: #f3f3f3;">\end&#123;env}</span> is inserted in the right place even when the user uses tabs for indentation (Patch by Kishore Gopalakrishnan, <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=322654">#322654</a>)</li><li style="text-align: left;">Avoid saving console commands in bash history (Patch by Alessio Bonfiglio, <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=391537">#391537</a>, #453935)</li><li style="text-align: left;">Don't crash when deleting templates (<a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=413506">#413506</a>)</li><li style="text-align: left;">Avoid crashing when closing a document that is being parsed (<a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=404164">#404164</a>)</li></ul><p>Thanks to all the contributors. They fixed bugs, wrote documentation, modernized the code, and in general took care of Kile.</p><p>Enjoy the latest Kile release!<br /><img alt="" height="1" src="https://vg02.met.vgwort.de/na/d2fab9c46ac845198a4b9f864f7afcc8" width="1" /></p>GruenichdigiKam 8.3.0 is releasedhttps://digikam.org/news/2024-03-17-8.3.0_release_announcement/Sun, 17 Mar 2024 00:00:00 +0000https://digikam.org/news/2024-03-17-8.3.0_release_announcement/Dear digiKam fans and users, After four months of active maintenance and long bugs triage, the digiKam team is proud to present version 8.3.0 of its open source digital photo manager. This version arrives with the internal RAW decoder Libraw updated to the rolling-release snapshot 2024-02-02. Long time bugs present in older versions have been fixed and we spare a lot of time to contact users to validate changes in pre-release to confirm fixes before deploying the program in production.digiKamBreeze Icon Update March 16, 2024https://anditosan.wordpress.com/2024/03/16/breeze-icon-update-march-16-2024/Sat, 16 Mar 2024 15:11:03 +0000http://anditosan.wordpress.com/?p=279<p>Hi all,</p> <p>I am back with another update for adapting icons to the 24px grid and doing some larger edits. This week, I worked on 3 rows, which is great, and was able to hit just past the 50% mark, it seems <img src="https://s0.wp.com/wp-content/mu-plugins/wpcom-smileys/twemoji/2/72x72/1f600.png" alt="😀" class="wp-smiley" style="height: 1em; max-height: 1em;" /></p> <p>Here is a video with the changes:</p> <figure class="wp-block-embed is-type-rich is-provider-embed-handler wp-block-embed-embed-handler wp-embed-aspect-16-9 wp-has-aspect-ratio"><div class="wp-block-embed__wrapper"> <iframe class="youtube-player" width="1100" height="619" src="https://www.youtube.com/embed/-2E2fVhZzhU?version=3&#038;rel=1&#038;showsearch=0&#038;showinfo=1&#038;iv_load_policy=1&#038;fs=1&#038;hl=en&#038;autohide=2&#038;wmode=transparent" allowfullscreen="true" style="border:0;" sandbox="allow-scripts allow-same-origin allow-popups allow-presentation allow-popups-to-escape-sandbox"></iframe> </div></figure>Andres BettsThis weekend I am contributing to Transitous. You should too.https://quickfix.es/2024/03/this-weekend-i-am-contributing-to-transitous-you-should-too/Sat, 16 Mar 2024 11:41:54 +0000https://quickfix.es/?p=9640Transitous is a new community-driven routing service. Add your own city and help make it great.Paul BrownDolphin 24.02https://meven.github.io/dolphin-24-02/Sat, 16 Mar 2024 10:30:00 +0000https://meven.github.io/dolphin-24-02/<p>Since last <a target="_blank" href="https://apps.kde.org/dolphin/">Dolphin</a> version 23.08, I spent a lot of my time making sure the transition to KF6/Qt6 went smoothly for dolphin and its dependencies and plugins and thanks to many others contributions, in particular <a target="_blank" href="https://write.as/alexander-lohnau/">Alexander</a> and <a target="_blank" href="https://nicolasfella.de/">Nicolas</a>, this went well. The objective being no-one would notice despite much code has changed and this mostly worked out.</p> <h1 id="changes">Changes</h1> <p>A few behaviors and default have changed.</p> <p>Files and folders are now selected with a single-click and opened with a double-click. This will mainly affect Neon Users, since most distros already had this behavior default. You can select the single-click-open mode on the first page of systemsettings, as it concerns also Plasma, file/open dialog and other applications.</p> <p>The extract here option in the menu now has the behavior of the old &quot;extract here and detect subfolders&quot;. This makes the menu less heavy on text while making the action more accessible.</p> <p>Service menus will need some adaptation unfortunately, you will need to Moving them to a new location. Usually <code>mv ~/.local/share/kservices5/ServiceMenus/* ~/.local/share/kio/servicemenus</code>. (Ensure to have destination directory created: <code>mkdir -p ~/.local/share/kio/servicemenus</code>) You can read the <a target="_blank" href="https://develop.kde.org/docs/apps/dolphin/service-menus/">updated documentation</a>.</p> <p>The <code>F10</code> shortcut now opens the menu, instead of creating a directory. That's an important change to improve accessibility by providing standard shortcuts. You can change it back if you want, and you can also use the the standard shortcut for this action <code>Ctrl+Shift+N</code>.</p> <h1 id="new-features">New features</h1> <p>The settings have been reorganized making it easier to find what you are looking for. The Interface section regroups setitings regarding the UI elements of dolphin, and the view those that influences how the main view will display your files and folders.</p> <p><a href="//meven.github.io/captures/dolphin-24.02-settings.png" title=""><img src="//meven.github.io/captures/dolphin-24.02-settings.png" with="100%"/></a></p> <p>Shoutout to Dimosthenis Krallis for pulling it off, this wasn't an easy task especially for a not yet regular contributor.</p> <p>Thanks to <a target="_blank" href="https://blogs.kde.org/authors/carlschwan/">Carl</a>, we got a very nice visual improvement to KDE application with breeze. I really enjoy the change to Dolphin. Looking back at dolphin in plasma5 makes it glaring.</p> <p>A small new feature, I added, is you can now middle click on a file to open it in the second application associated with its type. Let's say you have an html file you normally open with your browser, but sometimes you want to edit it. Now instead of going to the open-with menu you can middle-click it. This works for scripts as well, opening them in your default editor instead of the second application assoctiated with their type.</p> <p><a href="//meven.github.io/captures/dolphin-24.02-quick-edit.png" title=""><img src="//meven.github.io/captures/dolphin-24.02-quick-edit.png" width="100%"/></a></p> <p>This was inspired by the fact that folders benefit from middle-click activations to open new tabs. Making this behavior configurable might make sense, suggestions welcome, but this seems like a sensible default at least.</p> <p><a target="_blank" href="https://wordsmith.social/felix-ernst/">Felix</a>, my fellow dolphin co-maintainer, did a bunch of ui-refinement, like the free space label in the status bar and some very nice <a target="_blank" href="https://wordsmith.social/felix-ernst/f10-for-accessibility-in-kf6">accessibility improvements</a>, including the <code>F10</code> shorcut change that now triggers the app menu by default.</p> <p>You can open now open containing folders for <a target="_blank" href="https://invent.kde.org/system/dolphin/-/merge_requests/616">files in the Recent Files</a>.</p> <h1 id="bug-fixed">Bug fixed</h1> <p>Akseli Lahtinen made sure to <a target="_blank" href="https://invent.kde.org/system/dolphin/-/merge_requests/675">Resort directory size count after refreshing</a>.</p> <p>And in total 32 were fixed between Dolphin 23.08.05 and Dolphin 24.02.0. <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=480098">480098</a> <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=441070">441070</a> <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=477897">477897</a> <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=479596">479596</a> <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=478724">478724</a> <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=476670">476670</a> <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=473999">473999</a> <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=478117">478117</a> <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=477607">477607</a> <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=477288">477288</a> <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=476742">476742</a> <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=172967">172967</a> <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=452587">452587</a> <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=475547">475547</a> <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=422998">422998</a> <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=423884">423884</a> <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=440366">440366</a> <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=474951">474951</a> <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=474999">474999</a> <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=393152">393152</a> <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=473775">473775</a> <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=473377">473377</a> <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=473513">473513</a> <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=420870">420870</a> <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=472912">472912</a> <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=468445">468445</a> <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=469354">469354</a> <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=462778">462778</a> <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=417930">417930</a> <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=464594">464594</a> <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=471999">471999</a> <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=47197">47197</a></p> <h1 id="new-code-new-bugs">New code, new bugs</h1> <p>Unfortunately whenever you ship new code, you risk introducing new bugs, and even months of testing didn't iron them all.</p> <p>One I think you could have spotted earlier, was that on X11, <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=481952">panels are hidden after minimizing Dolphin window</a>. Thanks to Nicolas fella, this was swiftly fixed and will reach users in next Dolphin release. In the meantime, this is a good time to learn about the shortcuts for panels:</p> <ul> <li><code>F9</code>: toggle places panel</li> <li><code>F11</code>: toggle information panel</li> </ul> <p>We now have a need process to build packages for Windows and Mac OS, Dolphin has not made the transition though. I am working on it to bring latest dolphin to its Window and MacOS users.</p>Méven CarCompleting the KDE Frameworks 6 transitionhttps://www.volkerkrause.eu/2024/03/16/kf6-completing-the-transition.htmlSat, 16 Mar 2024 09:45:00 +0000https://www.volkerkrause.eu/2024/03/16/kf6-completing-the-transition<p>Getting the <a target="_blank" href="https://kde.org/announcements/megarelease/6/">KDE Mega Relase 6</a> out was a key milestone in the transition to Qt 6 and KDE Frameworks 6, but it doesn’t mean we are done yet. There’s still components to port and scaffolding to remove.</p> <h3 id="porting-remaining-applications">Porting remaining applications</h3> <p>While KDE Frameworks and Plasma switched completly to Qt 6 with the release, there’s still a number of components in KDE Gear using Qt 5 by default. The following modules still need work:</p> <ul> <li>Artikulate</li> <li>Cantor (<a target="_blank" href="https://invent.kde.org/education/cantor/-/merge_requests/63">MR</a>)</li> <li>Kalzium - has Qt6 CI already</li> <li>Kig</li> <li>KmPlot - has Qt6 CI already</li> <li>KTouch (<a target="_blank" href="https://invent.kde.org/education/ktouch/-/merge_requests/35">MR</a>)</li> <li>Marble (<a target="_blank" href="https://invent.kde.org/education/marble/-/tree/marble-qt6">branch</a>)</li> <li>Minuet - has Qt6 CI already</li> <li>Rocs (<a target="_blank" href="https://invent.kde.org/education/rocs/-/merge_requests/53">QtScript porting MR</a>)</li> <li>Step - has Qt6 CI already</li> <li>KolourPaint (<a target="_blank" href="https://invent.kde.org/graphics/kolourpaint/-/merge_requests/49">MR</a>)</li> <li>K3b - has Qt6 CI already</li> <li>KMix</li> <li>Kwave</li> <li>Cervisia - partially ported</li> <li>Lokalize (<a target="_blank" href="https://invent.kde.org/sdk/lokalize/-/merge_requests/79">MR</a>)</li> <li>poxml</li> <li>Umbrello</li> <li>KDevelop (<a target="_blank" href="https://invent.kde.org/kdevelop/kdevelop/-/merge_requests/522">MR</a>)</li> <li>KRDC - has Qt6 CI already</li> <li>KImageMap Editor - has partial Qt6 CI already</li> <li>Kamoso</li> <li>Kirigami Gallery (<a target="_blank" href="https://invent.kde.org/sdk/kirigami-gallery/-/tree/kf6">branch</a>)</li> <li>Calindori - CI is Qt6 only but default build is still Qt5?</li> <li>ghostwriter - has Qt6 CI already</li> </ul> <p>This list doesn’t include modules that are basically ported but cannot switch yet due to other things depending on them, ie. there is more than those not released for KF6 yet. Same goes for modules providing plugins that are still needed for both versions.</p> <p>The complexity of the remaining work here ranges from putting on finishing touches and taking the decision to make the switch all the way to dealing with potentially difficult to port dependencies such as QtScript. So there’s something for everyone here ;)</p> <p>And then there’s of course even more outside of the KDE Gear release automation that also needs to be looked at, Krita for example recently posted <a target="_blank" href="https://krita.org/en/posts/2024/2024-roadmap/">their plans</a> for the migration to Qt 6.</p> <h3 id="cleaning-up-porting-aids">Cleaning up porting aids</h3> <p>But even in the modules released exclusively for Qt6 and KF6 already there is still work to be done, namely removing the remaining uses of porting aids such as Qt5Compat.</p> <p>While the need for this might not seem that pressing anymore there’s many good reasons for doing this sooner rather than later:</p> <ul> <li>We have many people around still familiar with how to do that and its potential pitfalls. That knowledge tends to fade away over time.</li> <li>We pay extra in download, storage and runtime cost for carrying around those dependencies. That matters especially for bundled apps, e.g. for some of our APKs this lead to a <a href="//www.volkerkrause.eu/2023/12/16/kf6-android-porting-status.html">20% size reduction</a>.</li> <li>Future-us will hate us for not doing this, in the same way as we were unhappy about past-us not having cleaned up after themselves during the 4 -&gt; 5 migration.</li> </ul> <h4 id="qtcore5compat">QtCore5Compat</h4> <p>On the C++ side that’s basically <code class="language-plaintext highlighter-rouge">QRegExp</code>, <code class="language-plaintext highlighter-rouge">QTextCodec</code> and the SAX XML parsing API.</p> <p><code class="language-plaintext highlighter-rouge">QTextCodec</code>:</p> <ul> <li>Uses for small chunks of UTF-8, Latin-1 or local 8 bit encoded strings can be replaced by <code class="language-plaintext highlighter-rouge">QString</code> API (not that common).</li> <li>Use for larger amounts of data or different codecs can be replaced by <code class="language-plaintext highlighter-rouge">QStringEncoder</code> and <code class="language-plaintext highlighter-rouge">QStringDecoder</code> (the most common case).</li> <li>Uses for listing all codecs needs new API in Qt 6.7 and cannot be replaced just yet (rare).</li> <li>Uses in combination of <code class="language-plaintext highlighter-rouge">QTextStream</code> for non-Unicode content have no replacement (fortunately very rare by now).</li> </ul> <p><code class="language-plaintext highlighter-rouge">QRegExp</code>:</p> <ul> <li>Fully replaceable by <code class="language-plaintext highlighter-rouge">QRegularExpression</code>.</li> <li>Wildcard and exact match support might need changes to the actual expressions, either manually or via corresponding <code class="language-plaintext highlighter-rouge">QRegularExpression</code> helper methods (somewhat common by now as most easy case have long been converted).</li> </ul> <p>Things get a bit more tricky for both of those when these types are used in API and thus propagate through larger parts of the code, but fortunately we only have a few of those cases left. The vast majority of uses is very localized.</p> <p>SAX XML parser:</p> <ul> <li>Replaceable by <code class="language-plaintext highlighter-rouge">QXmlStreamReader</code>.</li> <li>Can require larger code changes and needs extra care when dealing with XML namespaces.</li> <li>Fortunately rare by now.</li> </ul> <h4 id="qt5comaptgraphicaleffects-qml-module">Qt5Comapt.GraphicalEffects QML module</h4> <p>The other big part of Qt5Compat are about 25 graphical effects for QML.</p> <ul> <li><code class="language-plaintext highlighter-rouge">DropShadow</code> and <code class="language-plaintext highlighter-rouge">RectangularGlow</code> can in many cases be replaced by <code class="language-plaintext highlighter-rouge">Kirigami.ShadowedRectangle</code>, which is probably the most common case here. <code class="language-plaintext highlighter-rouge">MultiEffect</code> covers the rest, ie. shadows on anything else than (rounded) rectangles.</li> <li><code class="language-plaintext highlighter-rouge">LinearGradient</code> <s>in any other orientation than vertical needs a nested and rotated `Rectangle` now to hold the gradient, see e.g. Kirigami.EdgeShadow for an example</s> in horizontal or vertical orientation can be replaced by a <code class="language-plaintext highlighter-rouge">Rectangle</code> with associated <code class="language-plaintext highlighter-rouge">Gradient</code> (few cases left).</li> <li>For anything else you have to hope that the Qt6 <code class="language-plaintext highlighter-rouge">MultiEffect</code> provides a suitable replacement. For the most common cases (blur and opacity masks) that’s the case fortunately, for more exotic effects you might need to get creative.</li> </ul> <h4 id="plasma5support">Plasma5Support</h4> <p>Qt5Compat isn’t the only porting aid though. Plasma5Support is another one to look at, with still hundreds of uses left just within KDE code.</p> <p>Plasma5Support contains some of the former Plasma Framework functionality, such as the data engines. I have no experience porting away from that myself though, maybe the Plasma team can provide some guidance for that :)</p> <h3 id="you-can-help">You can help!</h3> <p>In particular removing the remaining porting aid uses in many cases doesn’t need in-depth knowledge of the affected applications but consists of separate and localized changes, so it’s the ideal side-task while waiting for longer compile runs for example.</p> <p><a target="_blank" href="https://lxr.kde.org">LXR</a> is a very useful tool for finding the remaining uses and the <a target="_blank" href="https://matrix.to/#/#kde-devel:kde.org">KDE Development</a> channel on Matrix is the place to ask if you need help. Among my merge requests from the past two weeks you’ll also find 30+ examples for such changes.</p>Volker KrauseThis week in KDE: Dolphin levels uphttps://pointieststick.com/2024/03/15/this-week-in-kde-dolphin-levels-up/Sat, 16 Mar 2024 04:36:53 +0000http://pointieststick.com/?p=19385<p>In addition to lots and lots of Plasma 6 stability work and the beginning of Plasma 6.1 feature work, Dolphin received large amount of development this week, resulting in some nice improvements. Check it out!</p> <h2 class="wp-block-heading">New Features</h2> <p>KSSHAskPass (which has the best name of any app in the world, change my mind) now supports SK-type SSH keys (Franz Baumgärtner, KSSHAskPass 24.05. <a target="_blank" href="https://invent.kde.org/plasma/ksshaskpass/-/merge_requests/9">Link</a>)</p> <p>Gave the Web Browser widget the option to always load a specific page every time, or remember the last-browsed-to one (Shubham Arora, Plasma 6.1. <a target="_blank" href="https://invent.kde.org/plasma/kdeplasma-addons/-/merge_requests/548">Link</a>):</p> <div class="wp-block-image"> <figure class="aligncenter size-full"><img data-attachment-id="19439" data-permalink="https://pointieststick.com/2024/03/15/this-week-in-kde-dolphin-levels-up/image-2-16/" data-orig-file="https://pointieststick.files.wordpress.com/2024/03/image-2.png" data-orig-size="2199,1384" data-comments-opened="1" data-image-meta="&#123;&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="image-2" data-image-description="" data-image-caption="" data-medium-file="https://pointieststick.files.wordpress.com/2024/03/image-2.png?w=300" data-large-file="https://pointieststick.files.wordpress.com/2024/03/image-2.png?w=1024" src="https://pointieststick.files.wordpress.com/2024/03/image-2.png" alt="" class="wp-image-19439" /></figure></div> <p>Info Center has a new page showing you technical audio information for debugging purposes (Shubham Arora, Plasma 6.1. <a target="_blank" href="https://invent.kde.org/plasma/kinfocenter/-/merge_requests/196">Link</a>)</p> <p>The icon chooser dialog now has a filter so you can see only symbolic icons, or no symbolic icons (Kai Uwe Broulik, Frameworks 6.1. <a target="_blank" href="https://invent.kde.org/frameworks/kiconthemes/-/merge_requests/125">Link</a>):</p> <figure class="wp-block-image size-full"><img data-attachment-id="19442" data-permalink="https://pointieststick.com/2024/03/15/this-week-in-kde-dolphin-levels-up/image-3-14/" data-orig-file="https://pointieststick.files.wordpress.com/2024/03/image-3.png" data-orig-size="1873,1215" data-comments-opened="1" data-image-meta="&#123;&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="image-3" data-image-description="" data-image-caption="" data-medium-file="https://pointieststick.files.wordpress.com/2024/03/image-3.png?w=300" data-large-file="https://pointieststick.files.wordpress.com/2024/03/image-3.png?w=1024" src="https://pointieststick.files.wordpress.com/2024/03/image-3.png" alt="" class="wp-image-19442" /></figure> <h2 class="wp-block-heading">UI Improvements</h2> <p>Dolphin&#8217;s icon once again changes with the accent color (Kai Uwe Broulik, Dolphin 24.02.1. <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=482581">Link</a>)</p> <p>Most of Dolphin&#8217;s bars now animate appearing and disappearing (Felix Ernst, Dolphin 24.05. <a target="_blank" href="https://invent.kde.org/system/dolphin/-/merge_requests/725">Link</a>):</p> <div style="width: 640px;" class="wp-video"><!--[if lt IE 9]><i>A script element has been removed to ensure Planet works properly. Please find it in the original post.</i><![endif]--> <video class="wp-video-shortcode" id="video-19385-1" width="640" height="360" preload="metadata" controls="controls"><source type="video/mp4" src="https://i.imgur.com/S9FcNzq.mp4?_=1" /><a target="_blank" href="https://i.imgur.com/S9FcNzq.mp4">https://i.imgur.com/S9FcNzq.mp4</a></video></div> <p>Some folders in Dolphin get special view settings applied by default, such as the Trash and Recent Files/Folders locations. Now these special view settings get applied to those folders even if you&#8217;re using the &#8220;use same view settings for all folders&#8221; setting (Jin Liu, Dolphin 24.05. <a target="_blank" href="https://invent.kde.org/system/dolphin/-/merge_requests/731">Link</a>)</p> <p>Dolphin now has a new tab in its settings window for settings about its panels, which were previously hidden away in a context menu. So far just the Information Panel is represented there, but others may be added later! (Benedikt Thiemer, Dolphin 24.05. <a target="_blank" href="https://invent.kde.org/system/dolphin/-/merge_requests/723#note_896090">Link</a>):</p> <div class="wp-block-image"> <figure class="aligncenter size-full"><img data-attachment-id="19430" data-permalink="https://pointieststick.com/2024/03/15/this-week-in-kde-dolphin-levels-up/image-1-15/" data-orig-file="https://pointieststick.files.wordpress.com/2024/03/image-1.png" data-orig-size="2083,1621" data-comments-opened="1" data-image-meta="&#123;&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="image-1" data-image-description="" data-image-caption="" data-medium-file="https://pointieststick.files.wordpress.com/2024/03/image-1.png?w=300" data-large-file="https://pointieststick.files.wordpress.com/2024/03/image-1.png?w=1024" src="https://pointieststick.files.wordpress.com/2024/03/image-1.png" alt="" class="wp-image-19430" /></figure></div> <p>Made touch scrolling in Konsole work better (Willian Wang, Konsole 24.05. <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=450440">Link</a>)</p> <p>Improved the way Konsole&#8217;s text cursor scales on Wayland, especially with fractional scale factors (Luis Javier Merino Morán, Konsole 24.05. <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=483197">Link</a>)</p> <p>Okular already lets you scroll around a document with the <code>hjkl</code> keys. Now if you hold down the Shift key while doing it, it scrolls 10 times faster! (Someone going by the pseudonym &#8220;GI GI&#8221;, Okular 24.05. <a target="_blank" href="https://invent.kde.org/graphics/okular/-/merge_requests/952">Link</a>)</p> <p>KRunner-powered search fields in Overview and the Search widget show the same search ordering that other ones already do (Alexander Lohnau, Plasma 6.0.2. <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=480750">Link</a>)</p> <p>The Power and Energy widget now hides its &#8220;Show Battery percentage on icon when not fully charged&#8221; option when the system has no batteries (Natalie Clarius, Plasma 6.0.2. <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=482089">Link</a>)</p> <p>With non-random wallpaper slideshows, Plasma now remembers the last-seen one and starts from there the next time you log in (Fushan Wen, Plasma 6.0.2. <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=482543">Link</a>)</p> <p>Improved keyboard navigation in Kirigami sidebars powered by the <code>GlobalDrawer</code> component (Carl Schwan, Frameworks 6.1. <a target="_blank" href="https://invent.kde.org/frameworks/kirigami/-/merge_requests/1481">Link</a>)</p> <p>Increased the size of the &#8220;Get new Plasma Widgets&#8221; dialog (Me: Nate Graham, Frameworks 6.1. <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=482604">Link</a>)</p> <h2 class="wp-block-heading">Bug Fixes</h2> <p>Fixed one source of issues with the lock screen breaking on X11 by showing a black background. There may be more, and we&#8217;re on the case for those too (Jakob Petsovits, Plasma 6.0.2. <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=481308">Link</a>)</p> <p>Fixed a way that the Battery Monitor widget could cause Plasma to crash (Natalie Clarius, Plasma 6.0.2. <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=483216">Link</a>)</p> <p>Fixed a way that Plasma could crash when you middle-click tasks in the Task Manager, or rapidly left-click on random audio-playing tasks (Fushan Wen, Plasma 6.0.2, <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=483027">Link 1</a> and <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=482756">link 2</a>)</p> <p>On X11, clicks no longer get eaten on part of top panels (Yifan Zhu, Plasma 6.0.2. <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=482827">Link</a>)</p> <p>On X11, lock and sleep inhibitions once again work (Jakub Gocoł, Plasma 6.0.2. <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=482141">Link</a>)</p> <p>Fixed most of the incorrectly-colored System Tray icons when using mixed dark/light themes. There&#8217;s still one remaining source of this that we found, which is also being worked on (Nicolas Fella, Plasma 6.0.2. <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=482645">Link</a>)</p> <p>You can once again scrub through songs played in Spotify using the Media Player widget (Fushan Wen, Plasma 6.0.2. <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=482603">Link</a>)</p> <p>Fixed several issues with panel widgets (including Kickoff) incorrectly passing focus to their parent panel when activated (Niccolò Venerandi, Plasma 6.0.2. <a target="_blank" href="https://invent.kde.org/plasma/plasma-desktop/-/merge_requests/2110">Link</a>)</p> <p>Dragging widgets to or from panels no longer sometimes causes Plasma to crash or makes the widget get stuck in ghost form on the desktop (Marco Martin, Plasma 6.0.3. <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=483287">Link 1</a> and <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=482371">link 2</a>)</p> <p>On Wayland, adding a second keyboard layout now causes the relevant System Tray widget to appear immediately, rather than only after Plasma or the system was restarted (Harald Sitter, Plasma 6.0.3. <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=449531">Link</a>)</p> <p>Fixed a way that Bluetooth pairing could fail (Ajrat Makhmutov, Plasma 6.0.3, <a target="_blank" href="https://invent.kde.org/plasma/bluedevil/-/merge_requests/159">Link</a>)</p> <p>On X11, the screen chooser OSD works again (Fushan Wen, Plasma 6.0.3. <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=482642">Link</a>)</p> <p>Breeze GTK is once again the default GTK theme (Fabian Vogt, Plasma 6.0.3. <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=482763">Link</a>)</p> <p>Yet again fixed the login sound so that it actually plays (Harald Sitter, Plasma 6.0.3. <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=482716">Link</a>)</p> <p>Reverted to an older and better way of sending pointer events on Wayland, which fixes multiple issues involving windows and cursors teleporting unexpectedly while dragging to maximize or de-maximize windows (Vlad Zahorodnii, Plasma 6.1. <a target="_blank" href="https://invent.kde.org/plasma/kwin/-/merge_requests/5393">Link 1</a>, <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=449105">link 2</a>, and <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=459218">link 3</a>)</p> <p>Fixed a bunch of weird cursor issues with GPUs that don&#8217;t support variable refresh rate properly (Xaver Hugl, Plasma 6.1. <a target="_blank" href="https://invent.kde.org/plasma/kwin/-/merge_requests/5396">Link</a>)</p> <p>Fixed a source of <code>xdg-desktop-portal</code> crashes on boot (David Redondo, Frameworks 6.1 <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=482730">Link</a>)</p> <p>Fixed two issues with the &#8220;Get New [thing]&#8221; dialogs that caused them to not show installation progress correctly, and get stuck after uninstalling something (Akseli Lahtinen, Frameworks 6.1. <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=483108">Link 1</a> and <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=476152">link 2</a>)</p> <p>System Monitor charts now appear properly for users of 10+ year-old Intel integrated GPUs (Arjen Hiemstra, Frameworks 6.1. <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=482988">Link</a>)</p> <p>More UI elements throughout QtQuick-based KDE software stop animating when animations are globally disabled, which also fixes an issue where Plasma button highlights would disappear with animations are globally disabled (me: Nate Graham, Frameworks 6.1. <a target="_blank" href="https://invent.kde.org/plasma/libplasma/-/merge_requests/1077">Link 1</a> and <a target="_blank" href="https://invent.kde.org/frameworks/qqc2-desktop-style/-/merge_requests/377#note_891690">link 2</a>)</p> <p>Other bug information of note:</p> <ul> <li>3 Very high priority Plasma bugs (up from 2 last week). <a target="_blank" href="https://bugs.kde.org/buglist.cgi?bug_severity=critical&amp;bug_severity=grave&amp;bug_severity=major&amp;bug_severity=crash&amp;bug_severity=normal&amp;bug_severity=minor&amp;bug_severity=task&amp;bug_status=UNCONFIRMED&amp;bug_status=CONFIRMED&amp;bug_status=ASSIGNED&amp;bug_status=REOPENED&amp;known_name=VHI-priority%20Plasma%20bugs&amp;list_id=2125490&amp;priority=VHI&amp;product=Bluedevil&amp;product=Breeze&amp;product=Discover&amp;product=drkonqi&amp;product=frameworks-kirigami&amp;product=frameworks-plasma&amp;product=frameworks-qqc2-desktop-style&amp;product=kactivitymanagerd&amp;product=kde-gtk-config&amp;product=kdeplasma-addons&amp;product=khelpcenter&amp;product=kinfocenter&amp;product=klipper&amp;product=kmenuedit&amp;product=krunner&amp;product=KScreen&amp;product=kscreenlocker&amp;product=ksmserver&amp;product=ksysguard&amp;product=KSystemLog&amp;product=kwin&amp;product=Plasma%20SDK&amp;product=Plasma%20Vault&amp;product=Plasma%20Workspace%20Wallpapers&amp;product=plasma-integration&amp;product=plasma-nm&amp;product=plasma-pa&amp;product=plasma-simplemenu&amp;product=plasmashell&amp;product=policykit-kde-agent-1&amp;product=Powerdevil&amp;product=print-manager&amp;product=printer-applet&amp;product=pulseaudio-qt&amp;product=systemsettings&amp;product=Touchpad-KCM&amp;product=user-manager&amp;product=xdg-desktop-portal-kde&amp;query_based_on=VHI-priority%20Plasma%20bugs&amp;query_format=advanced">Current list of bugs</a></li> <li>36 15-minute Plasma bugs (same as last week). <a target="_blank" href="https://bugs.kde.org/buglist.cgi?bug_severity=critical&amp;bug_severity=grave&amp;bug_severity=major&amp;bug_severity=crash&amp;bug_severity=normal&amp;bug_severity=minor&amp;bug_severity=task&amp;bug_status=UNCONFIRMED&amp;bug_status=CONFIRMED&amp;bug_status=ASSIGNED&amp;bug_status=REOPENED&amp;known_name=VHI-priority%20Plasma%20bugs&amp;list_id=2101429&amp;priority=HI&amp;product=Bluedevil&amp;product=Breeze&amp;product=Discover&amp;product=drkonqi&amp;product=frameworks-plasma&amp;product=kactivitymanagerd&amp;product=kde-gtk-config&amp;product=kdeplasma-addons&amp;product=khelpcenter&amp;product=kinfocenter&amp;product=klipper&amp;product=kmenuedit&amp;product=krunner&amp;product=KScreen&amp;product=kscreenlocker&amp;product=ksmserver&amp;product=ksysguard&amp;product=KSystemLog&amp;product=kwayland-integration&amp;product=kwin&amp;product=Plasma%20SDK&amp;product=Plasma%20Vault&amp;product=Plasma%20Workspace%20Wallpapers&amp;product=plasma-disks&amp;product=plasma-integration&amp;product=plasma-nm&amp;product=plasma-pa&amp;product=plasma-simplemenu&amp;product=plasma-systemmonitor&amp;product=plasmashell&amp;product=policykit-kde-agent-1&amp;product=Powerdevil&amp;product=print-manager&amp;product=printer-applet&amp;product=pulseaudio-qt&amp;product=systemsettings&amp;product=xdg-desktop-portal-kde&amp;query_based_on=VHI-priority%20Plasma%20bugs&amp;query_format=advanced">Current list of bugs</a></li> <li>207 KDE bugs of all kinds fixed over last week. <a target="_blank" href="https://bugs.kde.org/buglist.cgi?bug_severity=critical&amp;bug_severity=grave&amp;bug_severity=major&amp;bug_severity=crash&amp;bug_severity=normal&amp;bug_severity=minor&amp;bug_status=RESOLVED&amp;chfield=bug_status&amp;chfieldfrom=2024-3-8&amp;chfieldto=2024-3-15&amp;chfieldvalue=RESOLVED&amp;list_id=2648559&amp;query_format=advanced&amp;resolution=FIXED">Full list of bugs</a></li> </ul> <h2 class="wp-block-heading">Performance &amp; Technical</h2> <p>Fixed a source of 25-second Plasma startup delays when using KDE Connect with Bluetooth disabled or absent (Simon Redman, the next KDE Connect release, though most distros have already backported it. <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=481870">Link</a>)</p> <p>Fixed another source of slow Plasma startups caused by using the Bing picture of the day wallpaper (Fushan Wen, Plasma 6.0.2. <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=482267">Link</a>)</p> <p>KWin now does direct scan-out even for rotated screens (Xaver Hugl, Plasma 6.1. <a target="_blank" href="https://invent.kde.org/plasma/kwin/-/merge_requests/5374">Link</a>)</p> <p>Reduced the size of all the wallpapers in the <code>plasma-workspace-wallpapers</code> repo by 10 MB (Martin Rys, Plasma 6.1. <a target="_blank" href="https://invent.kde.org/plasma/plasma-workspace-wallpapers/-/merge_requests/17">Link</a>)</p> <p>Ported Kile to KDE Frameworks 6. Hopefully this should presage a new release soon (Carl Schwan, <a target="_blank" href="https://invent.kde.org/office/kile/-/merge_requests/60">link</a>)</p> <h2 class="wp-block-heading">Automation &amp; Systematization</h2> <p>Wrote a tutorial about setting up your app&#8217;s continuous integration system to package and publish to the Windows store (Ingo Klöcker, <a target="_blank" href="https://invent.kde.org/documentation/develop-kde-org/-/merge_requests/362">link</a>)</p> <p>Added some autotests for X11-specific window behavior (Vlad Zahorodnii, <a target="_blank" href="https://invent.kde.org/plasma/kwin/-/merge_requests/5410">link</a>)</p> <h2 class="wp-block-heading">Other</h2> <p>Rewrote a <a target="_blank" href="https://neon.kde.org/">some</a> <a target="_blank" href="https://neon.kde.org/faq">chunks</a> of text on KDE neon&#8217;s website to make it reflect reality: it <em>is</em> a distro, its target users are those who want KDE stuff fast and can tolerate some instability, and you shouldn&#8217;t use the package manager to get apps (me: Nate Graham, <a target="_blank" href="https://invent.kde.org/websites/neon-kde-org/-/merge_requests/16">link 1</a>, <a target="_blank" href="https://invent.kde.org/websites/neon-kde-org/-/merge_requests/17">link 2</a>, <a target="_blank" href="https://invent.kde.org/websites/neon-kde-org/-/merge_requests/18">link 3</a>, and <a target="_blank" href="https://invent.kde.org/websites/neon-kde-org/-/merge_requests/19">link 4</a>)</p> <h2 class="wp-block-heading" id="and-everything-else">&#8230;And Everything Else</h2> <p>This blog only covers the tip of the iceberg! If you&#8217;re hungry for more, check out <a target="_blank" href="https://planet.kde.org" rel="nofollow">https://planet.kde.org</a>, where you can find more news from other KDE contributors.</p> <h2 class="wp-block-heading" id="how-you-can-help">How You Can Help</h2> <p>Please help with bug triage! The Bugzilla volumes are extraordinary right now and we are overwhelmed. I&#8217;ll be doing another blog post on this tomorrow; for now, if you&#8217;re interested, <a target="_blank" href="https://community.kde.org/index.php?title=Guidelines_and_HOWTOs/Bug_triaging">read this</a>.</p> <p>Otherwise, visit <a target="_blank" href="https://community.kde.org/Get_Involved">https://community.kde.org/Get_Involved</a> to discover other ways to be part of a project that really matters. Each contributor makes a huge difference in KDE; you are not a number or a cog in a machine! You don’t have to already be a programmer, either. I wasn’t when I got started. Try it, you’ll like it! We don’t bite!</p> <p>As a final reminder, 99.9% of KDE runs on labor that KDE e.V. didn&#8217;t pay for. If you&#8217;d like to help change that, <a target="_blank" href="https://kde.org/community/donations/">consider donating today</a>!</p>Nate GrahamWeb Review, Week 2024-11https://ervin.ipsquad.net/blog/2024/03/15/web-review-week-2024-11/Fri, 15 Mar 2024 11:59:08 +0000https://ervin.ipsquad.net/blog/2024/03/15/web-review-week-2024-11/<p>Let&rsquo;s go for my web review for the week 2024-11.</p> <hr /> <h4 id="the-getty-makes-nearly-88-000-art-images-free-to-use-however-you-like-open-culture">The Getty Makes Nearly 88,000 Art Images Free to Use However You Like | Open Culture</h4> <p><em>Tags: foss, culture, art</em></p> <p>This is a big and relevant release for open and freely accessible culture.</p> <p><a target="_blank" href="https://www.openculture.com/2024/03/the-getty-makes-nearly-88000-art-images-free-to-use-however-you-like.html">https://www.openculture.com/2024/03/the-getty-makes-nearly-88000-art-images-free-to-use-however-you-like.html</a></p> <p><br/></p> <h4 id="announcing-speedometer-3-0-a-shared-browser-benchmark-for-web-application-responsiveness">Announcing Speedometer 3.0: A Shared Browser Benchmark for Web Application Responsiveness</h4> <p><em>Tags: tech, browser, frontend, web, performance, benchmarking</em></p> <p>This is nice to see a new benchmark being published. This seems to follow real life scenarios. We can expect browser engines performance to increase.</p> <p><a target="_blank" href="https://browserbench.org/announcements/speedometer3/">https://browserbench.org/announcements/speedometer3/</a></p> <p><br/></p> <h4 id="rebuilding-foursquare-for-activitypub-using-openstreetmap-terence-eden-s-blog">Rebuilding FourSquare for ActivityPub using OpenStreetMap – Terence Eden’s Blog</h4> <p><em>Tags: tech, fediverse, map, geospatial</em></p> <p>Neat early experiments on query OSM for nearest potential point of interests and of geolocation support in ActivityPub implementations.</p> <p><a target="_blank" href="https://shkspr.mobi/blog/2024/01/rebuilding-foursquare-for-activitypub-using-openstreetmap/">https://shkspr.mobi/blog/2024/01/rebuilding-foursquare-for-activitypub-using-openstreetmap/</a></p> <p><br/></p> <h4 id="s3-is-files-but-not-a-filesystem">S3 is files, but not a filesystem</h4> <p><em>Tags: tech, cloud, storage, amazon</em></p> <p>A good explanation of the S3 pros and cons.</p> <p><a target="_blank" href="https://calpaterson.com/s3.html">https://calpaterson.com/s3.html</a></p> <p><br/></p> <h4 id="not-so-quickly-extending-quic">Not so quickly extending QUIC</h4> <p><em>Tags: tech, networking, protocols, standard, quic</em></p> <p>Interesting stuff coming in that space, but at a very slow pace. This is unfortunate since it makes adoption slower too.</p> <p><a target="_blank" href="https://lwn.net/Articles/964377/">https://lwn.net/Articles/964377/</a></p> <p><br/></p> <h4 id="cloning-a-laptop-over-nvme-tcp">Cloning a laptop over NVME TCP</h4> <p><em>Tags: tech, storage, networking</em></p> <p>Very interesting trick! I didn&rsquo;t know you could use NVME over TCP. This is indeed perfect for cloning a laptop. This sounds slow but this is the kind of things you can run over night.</p> <p><a target="_blank" href="https://copyninja.in/blog/clone_laptop_nvmet.html">https://copyninja.in/blog/clone_laptop_nvmet.html</a></p> <p><br/></p> <h4 id="how-head-works-in-git">How HEAD works in git</h4> <p><em>Tags: tech, tools, git, version-control</em></p> <p>Good explanations on how HEAD works in git and what it means. It&rsquo;s indeed one of those terms where the consistency isn&rsquo;t great in git.</p> <p><a target="_blank" href="https://jvns.ca/blog/2024/03/08/how-head-works-in-git/">https://jvns.ca/blog/2024/03/08/how-head-works-in-git/</a></p> <p><br/></p> <h4 id="a-tui-git-client-inspired-by-magit">A TUI Git client inspired by Magit</h4> <p><em>Tags: tech, git, command-line</em></p> <p>Looks like an interesting Git user interface. I&rsquo;ll take it out for a spin.</p> <p><a target="_blank" href="https://github.com/altsem/gitu">https://github.com/altsem/gitu</a></p> <p><br/></p> <h4 id="c-safety-in-context-sutter-s-mill">C++ safety, in context – Sutter’s Mill</h4> <p><em>Tags: tech, c++, memory, safety</em></p> <p>Excellent piece from Herb Sutter once again. This is a very well balanced view about language safety and how far C++ could go in this direction. This is a nice call to action, would like to see quite some of that happen.</p> <p><a target="_blank" href="https://herbsutter.com/2024/03/11/safety-in-context/">https://herbsutter.com/2024/03/11/safety-in-context/</a></p> <p><br/></p> <h4 id="a-tale-of-two-standards">A Tale of Two Standards</h4> <p><em>Tags: tech, standard, portability, unix, linux, posix, windows, history</em></p> <p>An old article, but a fascinating read. This gives a good account on the evolution of POSIX and Win32. The differences in design and approaches are covered. Very much recommended.</p> <p><a target="_blank" href="https://www.samba.org/samba/news/articles/low_point/tale_two_stds_os2.html">https://www.samba.org/samba/news/articles/low_point/tale_two_stds_os2.html</a></p> <p><br/></p> <h4 id="screen-space-reflection">Screen Space Reflection</h4> <p><em>Tags: tech, 3d, shader</em></p> <p>Interesting walk through of a shader to compute reflections in a scene.</p> <p><a target="_blank" href="https://zznewclear13.github.io/posts/screen-space-reflection-en/">https://zznewclear13.github.io/posts/screen-space-reflection-en/</a></p> <p><br/></p> <h4 id="my-favourite-animation-trick-exponential-smoothing-lisyarus-blog">My favourite animation trick: exponential smoothing | lisyarus blog</h4> <p><em>Tags: tech, graphics, animation</em></p> <p>A deep dive in the properties of exponential smoothing for animations. It&rsquo;s often overlooked.</p> <p><a target="_blank" href="https://lisyarus.github.io/blog/programming/2023/02/21/exponential-smoothing.html">https://lisyarus.github.io/blog/programming/2023/02/21/exponential-smoothing.html</a></p> <p><br/></p> <h4 id="cohost-rotation-with-three-shears">cohost! - &ldquo;Rotation with three shears&rdquo;</h4> <p><em>Tags: tech, graphics, history</em></p> <p>Fascinating trick in 2d graphics. Not really useful nowadays, but interesting.</p> <p><a target="_blank" href="https://cohost.org/tomforsyth/post/891823-rotation-with-three">https://cohost.org/tomforsyth/post/891823-rotation-with-three</a></p> <p><br/></p> <h4 id="what-mob-programming-is-bad-at-buttondown">What Mob Programming is Bad At • Buttondown</h4> <p><em>Tags: tech, optimization, pairing, mob-programming</em></p> <p>Interesting take and theory about pair and mob programming. Indeed finding the right path to optimize a piece of code is likely harder in such setups.</p> <p><a target="_blank" href="https://buttondown.email/hillelwayne/archive/what-mob-programming-is-bad-at/">https://buttondown.email/hillelwayne/archive/what-mob-programming-is-bad-at/</a></p> <p><br/></p> <h4 id="40-years-of-programming">40 years of programming</h4> <p><em>Tags: tech, craftsmanship, career</em></p> <p>Very interesting insights from someone who&rsquo;s been practicing this trade for a long time. I agree with most of it, it&rsquo;s inspiring.</p> <p><a target="_blank" href="https://liw.fi/40/">https://liw.fi/40/</a></p> <p><br/></p> <h4 id="on-the-importance-of-getting-the-foundations-right-cybernetist">On The Importance of Getting The Foundations Right - Cybernetist</h4> <p><em>Tags: tech, engineering, craftsmanship, architecture</em></p> <p>Definitely this. The difference between a well performing team and one delivering subpar software is the basics of our trade. Minding your data models, your architectures and the engineering practices will get you a long way.</p> <p><a target="_blank" href="https://cybernetist.com/2024/03/11/importance-of-getting-the-foundations-right/">https://cybernetist.com/2024/03/11/importance-of-getting-the-foundations-right/</a></p> <p><br/></p> <h4 id="work-on-tasks-not-stories-nicole-web">Work on tasks, not stories | nicole@web</h4> <p><em>Tags: tech, project-management, agile</em></p> <p>Definitely this. The distinction between stories and tasks is an important one. Don&rsquo;t confuse them.</p> <p><a target="_blank" href="https://ntietz.com/blog/work-on-tasks-not-stories/">https://ntietz.com/blog/work-on-tasks-not-stories/</a></p> <p><br/></p> <h4 id="breaking-down-tasks-jacob-kaplan-moss">Breaking Down Tasks - Jacob Kaplan-Moss</h4> <p><em>Tags: tech, project-management, estimates</em></p> <p>This is indeed an important aspect of estimating work. The smaller you manage to break down tasks the easier it will be to estimate. Breaking down work is a skill in itself though.</p> <p><a target="_blank" href="https://jacobian.org/2024/mar/11/breaking-down-tasks/">https://jacobian.org/2024/mar/11/breaking-down-tasks/</a></p> <p><br/></p> <h4 id="futility-of-shortening-iterations-by-aviv-ben-yosef-mar-2024-medium">Futility of Shortening Iterations | by Aviv Ben-Yosef | Mar, 2024 | Medium</h4> <p><em>Tags: tech, product-management, project-management</em></p> <p>There&rsquo;s some truth to this. Shorter optimized iterations with no good learning opportunities lead to busy work.</p> <p><a target="_blank" href="https://avivby.medium.com/futility-of-shortening-iterations-af4d3a3d9b3d">https://avivby.medium.com/futility-of-shortening-iterations-af4d3a3d9b3d</a></p> <p><br/></p> <h4 id="so-you-ve-been-reorg-d-jacob-kaplan-moss">So you&rsquo;ve been reorg&rsquo;d&hellip; - Jacob Kaplan-Moss</h4> <p><em>Tags: management, organization</em></p> <p>A bit US centric at times, but there are some more generally applicable advices in this piece. This can help you navigate in the time of a company reorganization (not always called out as such).</p> <p><a target="_blank" href="https://jacobian.org/2024/mar/12/reorg/">https://jacobian.org/2024/mar/12/reorg/</a></p> <p><br/></p> <hr /> <p>Bye for now!</p>Kevin OttensRESTful Client Applications in Qt 6.7 and Forwardhttps://www.qt.io/blog/restful-client-applications-in-qt-6.7-and-forwardFri, 15 Mar 2024 07:39:52 +0000https://www.qt.io/blog/restful-client-applications-in-qt-6.7-and-forward<div class="hs-featured-image-wrapper"> <a target="_blank" href="https://www.qt.io/blog/restful-client-applications-in-qt-6.7-and-forward" title="" class="hs-featured-image-link"> <img src="https://www.qt.io/hubfs/REST%20with%20Qt-1.png" alt="REST with Qt logo" class="hs-featured-image" style="width:auto !important; max-width:50%; float:left; margin:0 15px 15px 0;"> </a> </div> <p>Qt 6.7 introduces convenience improvements for implementing typical RESTful/HTTP client applications. The goal was/is to reduce the repeating networking boilerplate code by up to 40% by addressing the small but systematically repeating needs in a more convenient way.&nbsp;<br><br>These include a new QHttpHeaders class for representing HTTP headers, QNetworkRequestFactory for creating API-specific requests, &nbsp;QRestAccessManager class for addressing small but often-repeating pieces of code, and QRestReply class for extracting the data from replies and checking for errors. QNetworkRequestFactory, QRestAccessManager, and QRestReply are released as Technical Previews in Qt 6.7.</p> <img src="https://track.hubspot.com/__ptq.gif?a=149513&amp;k=14&amp;r=https%3A%2F%2Fwww.qt.io%2Fblog%2Frestful-client-applications-in-qt-6.7-and-forward&amp;bu=https%253A%252F%252Fwww.qt.io%252Fblog&amp;bvt=rss" alt="" width="1" height="1" style="min-height:1px!important;width:1px!important;border-width:0!important;margin-top:0!important;margin-bottom:0!important;margin-right:0!important;margin-left:0!important;padding-top:0!important;padding-bottom:0!important;padding-right:0!important;padding-left:0!important; ">Qt Dev LoopNew Release Team Bloghttps://blogs.kde.org/2024/03/15/new-release-team-blog/Fri, 15 Mar 2024 00:00:00 +0000https://blogs.kde.org/2024/03/15/new-release-team-blog/This blog will be used by the Release Team for communally maintained projects which need a release announcement. KDE Frameworks, Plasma and KDE Gear will remain on kde.org. But individual releases of apps and libraries which get their own releases can be announced here.KDE Release TeamRuqola 2.1.1https://blogs.kde.org/2024/03/15/ruqola-2.1.1/Fri, 15 Mar 2024 00:00:00 +0000https://blogs.kde.org/2024/03/15/ruqola-2.1.1/Ruqola 2.1.1 is a bugfix release of the Rocket.chat app. Improvements: Preview url fixed I implement &quot;block actions&quot; (it's necessary in RC 6.6.x when we invite user) Fix OauthAppsUpdateJob support (administration) Fix update view when we translate message (View was not updated in private channel) Show server icon in combobox server Fix show icon for displaying emoji popup menu when we display thread message Fix jitsi support Fix dark mode URL: https://download.KDE Release TeamQt Creator 13 RC releasedhttps://www.qt.io/blog/qt-creator-13-rc-releasedThu, 14 Mar 2024 11:33:55 +0000https://www.qt.io/blog/qt-creator-13-rc-released<p>We are happy to announce the release of Qt Creator 13 RC!</p> <img src="https://track.hubspot.com/__ptq.gif?a=149513&amp;k=14&amp;r=https%3A%2F%2Fwww.qt.io%2Fblog%2Fqt-creator-13-rc-released&amp;bu=https%253A%252F%252Fwww.qt.io%252Fblog&amp;bvt=rss" alt="" width="1" height="1" style="min-height:1px!important;width:1px!important;border-width:0!important;margin-top:0!important;margin-bottom:0!important;margin-right:0!important;margin-left:0!important;padding-top:0!important;padding-bottom:0!important;padding-right:0!important;padding-left:0!important; ">Qt Dev LoopStreamlining Multi-platform Development and Testinghttps://www.kdab.com/streamlining-multi-platform-development-and-testing/Thu, 14 Mar 2024 08:00:52 +0000https://www.kdab.com/?p=33575<p>In today’s pervasively digital landscape, building software for a single platform is a 1990s approach. Modern applications, even those designed for specific embedded targets, must be adaptable enough to run seamlessly across various platforms without sacrificing efficiency or reliability.</p> <p>This is often easier said than done. Here are some key points to consider when developing and testing multi-platform embedded software.</p> <h4>Emulation and virtual machines</h4> <p>When developing software, especially in the initial stages, testing and debugging often don’t happen on the final hardware but on development machines. That, and a frequent lack of target hardware means it’s a good idea to produce a build that can run within a virtual machine or container. Dedicating time and effort in developing custom hardware emulation layers and specialized build images pay off by enabling anyone in the test or development team to run a virtualized version of the final product.</p> <h4>Multi-board variants</h4> <p>Many product lines offer multiple hardware variants, with differing screen sizes and capabilities. Depending on the severity of the differences, these variants might require dedicated builds, potentially extending the time and resources devoted to your project. To avoid proliferating build configurations, consider enabling the software to auto-adapt to its hardware environment, provided it can be done reliably and without too much effort.</p> <h4>Mobile companion apps</h4> <p>Does your embedded product need to interface with a companion mobile app? These apps often handle remote configuration, reporting, and user profiles, enhancing product functionality and user experience. If so, consider using a cross-platform tool kit or framework to build your software. These allow you to share your business logic and UI components between iOS, Android, and your embedded platform. You can choose to reuse UI components in a stripped-down version of your application written specifically for mobile, or write the application once and have it adjust its behavior depending on the screen size and other hardware differences.</p> <h4>Strategies for multi-platform development</h4> <p>The key to successful multi-platform development is striking a balance between efficiency and coverage. Here are some strategies to consider.</p> <h4>Cross-compilation decisions</h4> <p>When dealing with multiple platforms, decide if it’s necessary to cross-compile for every platform with each commit. While this ensures up-to-date software for all variants, it can significantly extend the length of the build cycle. Consider reserving certain platforms for daily or less frequent builds to maintain a balance between speed and thoroughness.</p> <h4>Build system setup</h4> <p>Establish a robust build system with dedicated build computers, well-defined build scripts, and effective notification systems. Assign one person to oversee the build system and infrastructure to ensure its reliability and maintenance.</p> <h4>Embrace continuous integration (CI)</h4> <p>Transitioning from a traditional build approach to a continuous integration (CI) system is beneficial in the long run, especially when you’re managing multiple platforms. However CI demands automated builds, comprehensive unit testing, and automated test scripts. Despite this up-front investment, CI pays off by reducing bugs, enhancing release reliability, and speeding up maintenance changes.</p> <h4>Comprehensive testing</h4> <p>As much as possible, incorporate the “hard” testing bits into your automated testing/CI process – in other words, integration and user interface testing. These tests, while more complex to set up, significantly contribute to the robustness of your software. What works flawlessly in an emulated desktop environment may behave differently on the actual hardware, so ensure your testing procedures also include hardware target testing.</p> <h4>Building multi-platform with quality</h4> <p>Developing and testing software for multiple platforms requires a commitment to maintaining quality. For additional insights into ensuring your software&#8217;s versatility, reliability, and efficiency across all target platforms, read our best practices guide on <a target="_blank" href="https://www.kdab.com/publications/embedded-linux/embedded-linux-4.html#part-4-the-development-environment">Designing Your First Embedded Device: The Development Environment</a>.</p> <p>&nbsp;</p> <p>If you want to learn more about embedded Linux, come talk to us at Embedded World 2024 (9th-11th April) in Nürnberg: <a target="_blank" href="https://www.kdab.com/kdab-at-embedded-world-2024/">KDAB at EW24</a>.</p> <p><div class="panel panel-info"> <div class="panel-heading">About KDAB</div> <div class="panel-body"> <p>If you like this article and want to read similar material, consider subscribing via <a target="_blank" href="https://www.kdab.com/category/blogs/feed/">our RSS feed</a>.</p> <p>Subscribe to <a target="_blank" href="https://www.youtube.com/kdabtv">KDAB TV</a> for similar informative short video content. </p> <p>KDAB provides market leading software consulting and development <a target="_blank" href="https://www.kdab.com/software-services/">services</a> and <a target="_blank" href="https://training.kdab.com/">training</a> in Qt, C++ and 3D/OpenGL. <a target="_blank" href="https://www.kdab.com/about/contact/">Contact us</a>.</p> </div> </div> </p> <p>The post <a rel="nofollow" target="_blank" href="https://www.kdab.com/streamlining-multi-platform-development-and-testing/">Streamlining Multi-platform Development and Testing</a> appeared first on <a rel="nofollow" target="_blank" href="https://www.kdab.com">KDAB</a>.</p>KDAB on QtWhat We're Up To In 2024https://krita.org/en/posts/2024/2024-roadmap/Thu, 14 Mar 2024 00:00:00 +0000https://krita.org/en/posts/2024/2024-roadmap/<p>It's 2024 already, and even already March. Like last year, we had a video call with all sponsored developers, artists and volunteers to discuss what we achieved last year, figure out the biggest issues we're facing and set the priorities for this year.</p> <h1 id="challenges">Challenges</h1> <p>A very serious issue is that the maintainer of the Android and ChromeOS port of Krita has become too busy to work on Krita full-time. The Android and ChromeOS versions of Krita both use the Android platform, and that platform changes often and arbitrarily. This means that Sharaf has spent almost all of his time keeping Krita running on Android (and ChromeOS), instead of, as we had planned, work on a dedicated tablet user interface for Krita on Android. And since that maintenance work now is not being done, we're having a really big problem there. Additionally, since KDE has retired the binary factory and moved binary builds to invent.kde.org's continuous integration system, we don't have automatic builds for Android anymore.</p> <p>We've also lost another sponsored developer. They were sick for quite some time, but recently they blogged they had started to work a different job. Since they were especially working on maintaining the libraries Krita is dependent on and were very good at upstreaming fixes, they will also really be missed.</p> <p>Finally, we got Krita into the Apple MacOS store last year. However, two years ago, Krita's maintainer, that's me, changed her legal name. Now the certificates needed to sign the package for the store have expired, and we needed to create new certificates. Those have to have the signer's current legal name, and for some reason, it's proving really hard get the store to allow that the same developer, with the same ID and code but a different legal name to upload packages. We're working on that.</p> <h1 id="what-we-did-last-year">What We Did Last Year</h1> <p>Of course, we released Krita 5.2 and two bugfix releases for Krita 5.2. We'll do at least one other bugfix release before we release Krita 5.3.</p> <p>The audio system for Krita's animation feature got completely overhauled, ported away from Qt's QtMultimedia system to MLT, The storyboard feature got improved a lot, we gained JPEG-XL support just in time for Google's Chrome team to decide to drop it, because there was nobody supporting it... We also refactored the system we use to build all dependent libraries on all platforms. Well, work on MacOS is still going on, with PyQt being a problem point. Of course, there were a lot of other things going on as well.</p> <p>Wolthera started rewriting the text object, and mostly finished that and now is working on the tool to actually write, modify and typeset text. This is a huge change with very impressive results!</p> <h1 id="what-we-hope-to-do-this-year">What We Hope To Do This Year</h1> <p>Parts of this list is from last year, part of it is new.</p> <p>One big caveat: now that the KDE project has released the first version of KDE Frameworks for Qt6, porting Krita to Qt6 is going to have to happen. This is a big project, not just because of disappearing functions, but very much because of the changes to the support for GPU rendering. On Windows, OpenGL drivers are pretty buggy, and because of that, Qt5 offered the possibility to use the Angle compatibility layer between applications that use OpenGL and the native Direct3D library for GPU rendering. That's gone, and unless we rewrite our GPU rendering system, we need to put Angle back into the stack.</p> <p>All in all, it's pretty likely that porting to Qt6 will take a lot of time away from us implementing fun new features. But when that is done we can start working on a tablet-friendly user interface, provided we can still release Krita for Android.</p> <p>That's not to say we don't want to implement fun new featurs!</p> <p>Here's the shortlist:</p> <ul> <li>Implement a system to create flexible text balloons and integrate that with the text object so the text flows into the balloons</li> <li>Implement a new layer type, for comic book Frameworks</li> <li>Provide integration with Blender. (This is less urgent, though, since there is a very useful third-party plugin for that already: <a target="_blank" href="https://github.com/Yuntokon/BlenderLayer/">Blender Layer</a></li> <li>Replace the current docker system with something more flexible, and maintained.</li> <li>Implement a system to provide tool presets</li> <li>Create a new user interface for handling palettes</li> <li>Add an animation audio waveform display</li> <li>Add support for animation reference frame workflow.</li> </ul> <p>We also discussed using the GPU for improving performance. One original idea was to use the GPU for brushes, but the artists argued that the brush performance is fine, and what's way too slow are the liquefy transform tool, transform masks and some filters. In the end, Dmitry decided to investigate</p> <ul> <li>optimizing transform masks on the GPU</li> </ul> <p>And there's the most controversial thing of all: should we add AI features to Krita? We have had several heated discussions amongst developers and artists on the mailing list and on invent.kde.org.</p> <p>The artists in the meeting argued that generative AI is worthless and would at best lead to bland, repetitive templates, but that assistive AI could be useful. In order to figure out whether that's true, we started investigating one particular project: AI-assisted inking of sketches. This is useful, could replace a tedious step when doing art while still retaining the artistic individuality. Whether it will actually make it to Krita is uncertain of course, but the investigation will hopefully help us understand better the issue, the possibilities and the problems.</p> <p>Note: we won't be implementing anything that uses models trained on scraped images and we will make sure that the carbon footprint of the feature doesn't exceed its usefulness.</p>Krita NewsQt for MCUs 2.7 releasedhttps://www.qt.io/blog/qt-for-mcus-2.7-releasedWed, 13 Mar 2024 13:20:15 +0000https://www.qt.io/blog/qt-for-mcus-2.7-released<div class="hs-featured-image-wrapper"> <a target="_blank" href="https://www.qt.io/blog/qt-for-mcus-2.7-released" title="" class="hs-featured-image-link"> <img src="https://www.qt.io/hubfs/_Website_Blog/Upload_Here/Qt%20for%20MCUs%20release%202.7.png" alt="Qt for MCUs 2.7 released" class="hs-featured-image" style="width:auto !important; max-width:50%; float:left; margin:0 15px 15px 0;"> </a> </div> <p>A new version of Qt for MCUs is available, bringing new features to the Qt Quick Ultralite engine, additional MCU target platforms, and various improvements to our GUI framework for resource-constrained embedded systems.</p> <img src="https://track.hubspot.com/__ptq.gif?a=149513&amp;k=14&amp;r=https%3A%2F%2Fwww.qt.io%2Fblog%2Fqt-for-mcus-2.7-released&amp;bu=https%253A%252F%252Fwww.qt.io%252Fblog&amp;bvt=rss" alt="" width="1" height="1" style="min-height:1px!important;width:1px!important;border-width:0!important;margin-top:0!important;margin-bottom:0!important;margin-right:0!important;margin-left:0!important;padding-top:0!important;padding-bottom:0!important;padding-right:0!important;padding-left:0!important; ">Qt Dev LoopKDE Plasma 6.0.2, Bugfix Release for Marchhttps://kde.org/announcements/plasma/6/6.0.2/Tue, 12 Mar 2024 00:00:00 +0000https://kde.org/announcements/plasma/6/6.0.2/<p>Tuesday, 12 March 2024. Today KDE releases a bugfix update to KDE Plasma 6, versioned 6.0.2.</p> <p></p> <p>This release adds a week&#39;s worth of new translations and fixes from KDE&#39;s contributors. The bugfixes are typically small but important and include:</p> <ul> <li>Fix sending window to all desktops. <a target="_blank" href="https://commits.kde.org/kwin/dbf1edcc4185819aae95fcb3d078574ce2019f67">Commit.</a> Fixes bug <a target="_blank" href="https://bugs.kde.org/482670">#482670</a></li> <li>Folder Model: Handle invalid URL in desktop file. <a target="_blank" href="https://commits.kde.org/plasma-desktop/0264726f8720d3093bd3ba10f6107197b4f90be3">Commit.</a> Fixes bug <a target="_blank" href="https://bugs.kde.org/482889">#482889</a></li> <li>Fix panels being set to floating by upgrades. <a target="_blank" href="https://commits.kde.org/plasma-workspace/7f0e8e43de4155f5fb138aae6379c3fbef5570e3">Commit.</a></li> </ul> <a target="_blank" href="https://kde.org/announcements/changelogs/plasma/6/6.0.1-6.0.2">View full changelog</a>KDE CommunityKdenlive 24.02.0 releasedhttps://kdenlive.org/en/2024/03/kdenlive-24-02-0-released/Mon, 11 Mar 2024 16:52:13 +0000https://kdenlive.org/?p=13090<p><div class="et_pb_section et_pb_section_0 et_section_regular" > <div class="et_pb_row et_pb_row_0"> <div class="et_pb_column et_pb_column_4_4 et_pb_column_0 et_pb_css_mix_blend_mode_passthrough et-last-child"> <div class="et_pb_module et_pb_text et_pb_text_0 et_pb_text_align_left et_pb_bg_layout_light"> <div class="et_pb_text_inner"><p>The team is thrilled to introduce the much-anticipated release of Kdenlive 24.02, featuring a substantial upgrade to our frameworks with the adoption of <em>Qt6</em> and <em>KDE Frameworks 6</em>. This significant under-the-hood transformation establishes a robust foundation, shaping the trajectory of Kdenlive for the next decade. The benefits of this upgrade are particularly noteworthy for Linux users, as improved Wayland support enhances the overall experience. Additionally, users on Windows, MacOS, and Linux will experience a substantial performance boost since Kdenlive now runs natively on <em>DirectX</em>, <em>Metal</em>, and <em>Vulkan </em>respectively, replacing the previous abstraction layer reliance on <em>OpenGL</em> and <em>Angle</em>, resulting in a more efficient and responsive application. This upgrade brings significant changes to packaging, featuring the introduction of a dedicated package for <em>Apple Silicon</em>, the discontinuation of <em>PPA</em> support and an enhanced method for installing the <em>Whisper</em> and <em>Vosk</em> speech-to-text engines.</p> <p>While a significant effort has been invested in providing a stable user experience in this transition, we want to acknowledge that, like any evolving software, there might be some rough edges. Some known issues include: themes and icons not properly applied in Windows and AppImage, text not properly displayed in clips in the timeline when using Wayland and a crash in the Subtitle Manager under MacOS. Worth noting also is the temporary removal of the audio recording feature pending its migration to Qt6. We appreciate your understanding and encourage you to provide feedback in this release cycle so that we can continue refining and improving Kdenlive. In the upcoming release cycles (24.05 and 24.08), our development efforts will concentrate on stabilizing any remaining issues stemming from this upgrade. We&#8217;ll also prioritize short-term tasks outlined in our <a target="_blank" href="https://kdenlive.org/en/kdenlive-roadmap/">roadmap</a>, with a specific emphasis on enhancing performance and streamlining the effects workflow.</p> <p>In terms of performance enhancements, this release introduces optimized RAM usage during the import of clips into the Project Bin. Furthermore, it addresses Nvidia encoding and transcoding issues with recent ffmpeg versions.</p> <p>To safeguard project integrity, measures have been implemented to prevent corruptions. Projects with non-standard and variable frame rates are not allowed to be created. When rendering a project containing variable frame rate clips, users will receive a warning with the option to transcode these clips, mitigating potential audio-video synchronization issues.</p> <p>Users can now enjoy the convenience of an automatic update check <strong>without</strong> an active network connection. Glaxnimate animations now default to the rawr format, replacing Lottie. Furthermore, we&#8217;ve introduced an FFv1 render preset to replace the previously non-functional Ut Video. And multiple project archiving issues have been fixed.</p> <p>Beyond performance and stability we&#8217;ve managed to sneak in several nifty quality-of-life and usability improvements, the highlights include:</p></div> </div> </div> </div> </div><div class="et_pb_section et_pb_section_1 et_section_regular" > <div class="et_pb_row et_pb_row_1"> <div class="et_pb_column et_pb_column_4_4 et_pb_column_1 et_pb_css_mix_blend_mode_passthrough et-last-child"> <div class="et_pb_module et_pb_text et_pb_text_1 et_pb_text_align_left et_pb_bg_layout_light"> <div class="et_pb_text_inner"><h3>Subtitles<strong><br /> </strong></h3> <p>This release introduces multiple subtitle support, allowing users to conveniently choose the subtitle from a drop-down list in the track header.</p> <p>&nbsp;</p> <p><img fetchpriority="high" decoding="async" class="wp-image-13119 aligncenter size-full" src="https://kdenlive.org/wp-content/uploads/2024/03/Subtitle-switch.gif" alt="" width="716" height="332" /></p> <p>&nbsp;</p> <p>A subtitle manager dialog has been implemented to facilitate the import and export of subtitles.<br /> <img loading="lazy" decoding="async" class="wp-image-13120 aligncenter size-full" src="https://kdenlive.org/wp-content/uploads/2024/03/Subtitle-manage.png" alt="" width="563" height="362" srcset="https://kdenlive.org/wp-content/uploads/2024/03/Subtitle-manage.png 563w, https://kdenlive.org/wp-content/uploads/2024/03/Subtitle-manage-480x309.png 480w" sizes="(min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) 563px, 100vw" /></p> <p>Now, in the Import Subtitle dialog, you have the option to create a new subtitle instead of replacing the previous one.<br /> <img loading="lazy" decoding="async" class="wp-image-13121 aligncenter size-full" src="https://kdenlive.org/wp-content/uploads/2024/03/subtitle-import.png" alt="" width="709" height="455" srcset="https://kdenlive.org/wp-content/uploads/2024/03/subtitle-import.png 709w, https://kdenlive.org/wp-content/uploads/2024/03/subtitle-import-480x308.png 480w" sizes="(min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) 709px, 100vw" /></div> </div> </div> </div><div class="et_pb_row et_pb_row_2"> <div class="et_pb_column et_pb_column_4_4 et_pb_column_2 et_pb_css_mix_blend_mode_passthrough et-last-child"> <div class="et_pb_module et_pb_text et_pb_text_2 et_pb_text_align_left et_pb_bg_layout_light"> <div class="et_pb_text_inner"><h3>Speech-to-Text</h3> <p>The Speech Editor, our text-based editing tool that enables users to add clips to the timeline from selected texts, now includes the option to create new sequences directly from the selected text.</div> </div><div class="et_pb_module et_pb_image et_pb_image_0"> <span class="et_pb_image_wrap "><img loading="lazy" decoding="async" width="1350" height="837" src="https://kdenlive.org/wp-content/uploads/2024/03/Peek-2024-03-01-16-18.gif" alt="" title="Peek 2024-03-01 16-18" class="wp-image-13118" /></span> </div> </div> </div> </div><div class="et_pb_section et_pb_section_2 et_section_regular" > <div class="et_pb_row et_pb_row_3"> <div class="et_pb_column et_pb_column_4_4 et_pb_column_3 et_pb_css_mix_blend_mode_passthrough et-last-child"> <div class="et_pb_module et_pb_text et_pb_text_3 et_pb_text_align_left et_pb_bg_layout_light"> <div class="et_pb_text_inner"><h3>Effects</h3> <p>The initial implementation of the long awaited easing interpolation modes for keyframes has landed. Expected soon are easing types (ease in, ease out and ease in and out) and a graph editor.</p> <p>&nbsp;</p> <p><img loading="lazy" decoding="async" class="wp-image-13122 aligncenter size-full" src="https://kdenlive.org/wp-content/uploads/2024/03/easing.png" alt="" width="445" height="451" srcset="https://kdenlive.org/wp-content/uploads/2024/03/easing.png 445w, https://kdenlive.org/wp-content/uploads/2024/03/easing-296x300.png 296w" sizes="(max-width: 445px) 100vw, 445px" /></p> <p data-wp-editing="1">The Gaussian Blur and Average Blur filters are now keyframable.</p> <p data-wp-editing="1"><img loading="lazy" decoding="async" class="wp-image-13165 aligncenter size-full" src="https://kdenlive.org/wp-content/uploads/2024/03/blur.png" alt="" width="600" height="435" srcset="https://kdenlive.org/wp-content/uploads/2024/03/blur.png 600w, https://kdenlive.org/wp-content/uploads/2024/03/blur-480x348.png 480w" sizes="(min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) 600px, 100vw" /></p></div> </div> </div> </div> </div><div class="et_pb_section et_pb_section_3 et_section_regular" > <div class="et_pb_row et_pb_row_4"> <div class="et_pb_column et_pb_column_4_4 et_pb_column_4 et_pb_css_mix_blend_mode_passthrough et-last-child"> <div class="et_pb_module et_pb_text et_pb_text_4 et_pb_text_align_left et_pb_bg_layout_light"> <div class="et_pb_text_inner"><h3>Rendering</h3> <p>Added the option to set an interpolation method for scaling operations on rendering.</p> <p><img loading="lazy" decoding="async" class="aligncenter wp-image-13166 size-full" src="https://kdenlive.org/wp-content/uploads/2024/03/rendering-1.png" alt="" width="829" height="632" srcset="https://kdenlive.org/wp-content/uploads/2024/03/rendering-1.png 829w, https://kdenlive.org/wp-content/uploads/2024/03/rendering-1-480x366.png 480w" sizes="(min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) 829px, 100vw" /></div> </div> </div> </div> </div><div class="et_pb_section et_pb_section_4 et_section_regular" > <div class="et_pb_row et_pb_row_5"> <div class="et_pb_column et_pb_column_4_4 et_pb_column_5 et_pb_css_mix_blend_mode_passthrough et-last-child"> <div class="et_pb_module et_pb_text et_pb_text_5 et_pb_text_align_left et_pb_bg_layout_light"> <div class="et_pb_text_inner"><h3>Quality-of-Life and Usability<strong><br /> </strong></h3> <p>Added the option to apply an effect to a group of clips by simply dragging the effect onto any clip within the group.</p> <p><img loading="lazy" decoding="async" class="wp-image-13234 aligncenter size-full" src="https://kdenlive.org/wp-content/uploads/2024/03/effect-to-group.gif" alt="" width="823" height="441" /></div> </div><div class="et_pb_module et_pb_text et_pb_text_6 et_pb_text_align_left et_pb_bg_layout_light"> <div class="et_pb_text_inner">Conveniently move or delete selected clips within a group using the <em>Alt + Select</em> option.</p> <p><img loading="lazy" decoding="async" class="wp-image-13233 aligncenter size-full" src="https://kdenlive.org/wp-content/uploads/2024/03/alt-operation.gif" alt="" width="823" height="441" /></div> </div><div class="et_pb_module et_pb_text et_pb_text_7 et_pb_text_align_left et_pb_bg_layout_light"> <div class="et_pb_text_inner">Added a toggle button to clips with effects to easily enable/disable them directly from the timeline.</p> <p><img loading="lazy" decoding="async" class="wp-image-13235 aligncenter size-full" src="https://kdenlive.org/wp-content/uploads/2024/03/effect-switch.gif" alt="" width="716" height="332" /></div> </div><div class="et_pb_module et_pb_text et_pb_text_8 et_pb_text_align_left et_pb_bg_layout_light"> <div class="et_pb_text_inner"><p>Added list of last opened clips in Clip Monitor&#8217;s clip name</p> <p><img loading="lazy" decoding="async" class="wp-image-13494 aligncenter size-full" src="https://kdenlive.org/wp-content/uploads/2024/03/clip-monitor-name.gif" alt="" width="946" height="596" /></p></div> </div><div class="et_pb_module et_pb_text et_pb_text_9 et_pb_text_align_left et_pb_bg_layout_light"> <div class="et_pb_text_inner">Added the ability to open the location of the rendered file in the file manager directly from the render queue dialog..</p> <p><img loading="lazy" decoding="async" class="wp-image-13124 aligncenter size-full" src="https://kdenlive.org/wp-content/uploads/2024/03/open-folder.png" alt="" width="469" height="276" srcset="https://kdenlive.org/wp-content/uploads/2024/03/open-folder.png 469w, https://kdenlive.org/wp-content/uploads/2024/03/open-folder-300x177.png 300w" sizes="(max-width: 469px) 100vw, 469px" /></div> </div><div class="et_pb_module et_pb_text et_pb_text_10 et_pb_text_align_left et_pb_bg_layout_light"> <div class="et_pb_text_inner"><p data-wp-editing="1">The Document Checker has been completely rewritten following the implementation of sequences. Now, when you open a project, Kdenlive checks if all the clips, proxies, sequences, and effects are loaded correctly. If any errors are spotted, Kdenlive seamlessly sorts them out in the project files, preventing any possible project corruptions<img loading="lazy" decoding="async" class="wp-image-13125 aligncenter size-full" src="https://kdenlive.org/wp-content/uploads/2024/03/document-checker-2.png" alt="" width="936" height="595" srcset="https://kdenlive.org/wp-content/uploads/2024/03/document-checker-2.png 936w, https://kdenlive.org/wp-content/uploads/2024/03/document-checker-2-480x305.png 480w" sizes="(min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) 936px, 100vw" /></p></div> </div><div class="et_pb_module et_pb_text et_pb_text_11 et_pb_text_align_left et_pb_bg_layout_light"> <div class="et_pb_text_inner">Added the ability to trigger a sound notification when rendering is complete.<img loading="lazy" decoding="async" class="wp-image-13347 aligncenter size-full" src="https://kdenlive.org/wp-content/uploads/2024/03/notification-finish.png" alt="" width="838" height="500" srcset="https://kdenlive.org/wp-content/uploads/2024/03/notification-finish.png 838w, https://kdenlive.org/wp-content/uploads/2024/03/notification-finish-480x286.png 480w" sizes="(min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) 838px, 100vw" /></div> </div> </div> </div> </div><div class="et_pb_section et_pb_section_5 et_section_regular" > <div class="et_pb_row et_pb_row_6"> <div class="et_pb_column et_pb_column_4_4 et_pb_column_6 et_pb_css_mix_blend_mode_passthrough et-last-child"> <div class="et_pb_module et_pb_toggle et_pb_toggle_0 et_pb_toggle_item et_pb_toggle_close"> <h5 class="et_pb_toggle_title">Full changelog</h5> <div class="et_pb_toggle_content clearfix"><ul> <li>Fix multitrack view not exiting for some reason on tool switch (Qt6). <a target="_blank" href="https://commits.kde.org/kdenlive/c27597c96dd60c56fd4edc1d3f5298491abf44a4">Commit.</a></li> <li>Fix qml warnings. <a target="_blank" href="https://commits.kde.org/kdenlive/5113ba4ad3ed8cf6abf03c15ec2853dd1a170903">Commit.</a></li> <li>Show blue audio/video usage icons in project Bin for all clip types. <a target="_blank" href="https://commits.kde.org/kdenlive/f38897c6497dd13bd829352b48c02180cf8ed5f1">Commit.</a> See issue <a target="_blank" href="https://invent.kde.org/multimedia/kdenlive/-/issues/1816">#1816</a></li> <li>Multiple fixes for downloaded effect templates: broken link in effect info, empty name, cannot edit/delete. <a target="_blank" href="https://commits.kde.org/kdenlive/2580f09e5448ef072c32592ba63e655a4b592519">Commit.</a></li> <li>New splash for 24.02. <a target="_blank" href="https://commits.kde.org/kdenlive/311a8d128830ac07fa12f18613a9a3aa7e7201c2">Commit.</a></li> <li>Subtitles: add session id to tmp files to ensure 2 concurrent versions of a project don&#8217;t share the same tmp files. <a target="_blank" href="https://commits.kde.org/kdenlive/0b67c373df9aa2f38a8a11ad491b08fd18563ff4">Commit.</a> Fixes bug <a target="_blank" href="https://bugs.kde.org/481525">#481525</a></li> <li>Fix title clip font&#8217;s weight lost between Qt5 and Qt6 projects. <a target="_blank" href="https://commits.kde.org/kdenlive/b65dec7c875d05fd8b662114ba0ec50ce2b62fa8">Commit.</a></li> <li>Fix audio thumbnail not updated on replace clip in timeline. <a target="_blank" href="https://commits.kde.org/kdenlive/85c3061d78e491beaa8cbc0d83e557c4aee3809b">Commit.</a> Fixes issue <a target="_blank" href="https://invent.kde.org/multimedia/kdenlive/-/issues/1828">#1828</a></li> <li>Refactor mouse position in the timeline to fix multiple small bugs. <a target="_blank" href="https://commits.kde.org/kdenlive/c1fc9512cefff05b6ea8f412cee9bb64a599bce5">Commit.</a> Fixes bug <a target="_blank" href="https://bugs.kde.org/480977">#480977</a></li> <li>Subtitle import: disable ok button when no file is selected, only preview the 30 first lines. <a target="_blank" href="https://commits.kde.org/kdenlive/995e2693fdca4e463a0496e6842ff2a734c561f0">Commit.</a></li> <li>Fix wrong clip dropped on timeline when subtitle track is visible. <a target="_blank" href="https://commits.kde.org/kdenlive/4c9eca8adca13394392328210f5737b9d409a631">Commit.</a> See bug <a target="_blank" href="https://bugs.kde.org/481325">#481325</a></li> <li>Fix track name text color on Qt6. <a target="_blank" href="https://commits.kde.org/kdenlive/5da1e8e838083293294515d489ec2735ead0bd0d">Commit.</a></li> <li>Ensure we don&#8217;t mix title clips thumbnails (eg. in duplicated clips). <a target="_blank" href="https://commits.kde.org/kdenlive/1e26ce280ccec2ee9c06e363c3069de1b0d6cf46">Commit.</a></li> <li>Fix scopes and titler bg on Win/Mac. <a target="_blank" href="https://commits.kde.org/kdenlive/23685c755ec98b12bb9a04ecef638c8d1258a4b4">Commit.</a></li> <li>Fix incorrect item text. <a target="_blank" href="https://commits.kde.org/kdenlive/1b275b58f02a5fda013c6ef484623cee7f786708">Commit.</a></li> <li>Fix extract frame from video (fixes titler background, scopes, etc). <a target="_blank" href="https://commits.kde.org/kdenlive/85391400e43ee92ed442f339e9071309920dc534">Commit.</a></li> <li>Make AVFilter average and gaussian blur keyframable. <a target="_blank" href="https://commits.kde.org/kdenlive/8cb9f8074068c5c2a79bf440d61dfbe35daba9e0">Commit.</a></li> <li>Ensure we always load the latest xml definitions for effects. <a target="_blank" href="https://commits.kde.org/kdenlive/e215d21e4ea60b97a2c79a39b1fc66f4d8da9c3b">Commit.</a></li> <li>Fix composition paste not correctly keeping a_track. <a target="_blank" href="https://commits.kde.org/kdenlive/e257ea5f7f708601ff378402bd573f7f0ddfce63">Commit.</a></li> <li>Ensure custom keyboard shortcuts are not deleted on config reset. <a target="_blank" href="https://commits.kde.org/kdenlive/c5085679fdd625bd6aadaf36c9b13ca0d2253b7a">Commit.</a></li> <li>Fix crash after changing toolbar config: ensure all factory()-&gt;container actions are rebuild. <a target="_blank" href="https://commits.kde.org/kdenlive/5bdbfa5f87f75b79cabc03b23037387384393c0b">Commit.</a></li> <li>Try to fix white monitor on undock/fullscreen on Windows / Mac. <a target="_blank" href="https://commits.kde.org/kdenlive/1ced5a9f4cb1966970c92b53a9cded96d831452a">Commit.</a></li> <li>Fix sequence copy. <a target="_blank" href="https://commits.kde.org/kdenlive/8b5f5216f74d350907d6c611321899a610aca2e8">Commit.</a> See bug <a target="_blank" href="https://bugs.kde.org/481064">#481064</a></li> <li>Fix pasting of sequence clips to another document messing clip ids. <a target="_blank" href="https://commits.kde.org/kdenlive/97621ff7ba21b79262b819b1c2f46a92bed4034b">Commit.</a></li> <li>Fix python package detection, install in venv. <a target="_blank" href="https://commits.kde.org/kdenlive/fd463d4b5946239224028e91de782d98acbd4773">Commit.</a> See issue <a target="_blank" href="https://invent.kde.org/multimedia/kdenlive/-/issues/1819">#1819</a></li> <li>Another pip fix. <a target="_blank" href="https://commits.kde.org/kdenlive/31cb408ac1f740c9305dce724730bf77baa8353b">Commit.</a></li> <li>Fix typos in venv pip. <a target="_blank" href="https://commits.kde.org/kdenlive/1b8f9ca8ccd5c409126c1f59688f11a5c5c3403b">Commit.</a></li> <li>Venv: ensure the python process are correctly started. <a target="_blank" href="https://commits.kde.org/kdenlive/15b6457923f8dcf46ae7083e90d2529ba0474a4b">Commit.</a></li> <li>Add avfilter dblur xml description to fix param range. <a target="_blank" href="https://commits.kde.org/kdenlive/4c46811c054a539c5f0ff888397e40867ccaaad4">Commit.</a></li> <li>Fix typo. <a target="_blank" href="https://commits.kde.org/kdenlive/3f77d976f9c4e18be79857ebcad65b9d59ac3c21">Commit.</a></li> <li>Correctly ensure pip is installed in venv. <a target="_blank" href="https://commits.kde.org/kdenlive/cfba3736aef47f26feb5301df1a48433081288e8">Commit.</a></li> <li>Fix undocked widgets don&#8217;t have a title bar to allow moving / re-docking. <a target="_blank" href="https://commits.kde.org/kdenlive/f53a4835e56179ae5ed8ac4b0fb82adc6aa5df98">Commit.</a></li> <li>Ensure pip is installed inside our venv. <a target="_blank" href="https://commits.kde.org/kdenlive/f7d222e58d9a36a540c9c56b115bd1bfd3d3eb1b">Commit.</a></li> <li>Fix Qt6 dragging clips with subtitle track visible. <a target="_blank" href="https://commits.kde.org/kdenlive/9b172c9ba14a5fce575132d94a91cee577134380">Commit.</a> Fixes bug <a target="_blank" href="https://bugs.kde.org/480829">#480829</a></li> <li>Subtitle items don&#8217;t have a grouped property &#8211; fixes resize bug. <a target="_blank" href="https://commits.kde.org/kdenlive/1a69139dfd62c5330e84d3deca0d17db733dd3a6">Commit.</a> See bug <a target="_blank" href="https://bugs.kde.org/480383">#480383</a></li> <li>Fix Shift + resize subtitle affecting other clips. <a target="_blank" href="https://commits.kde.org/kdenlive/586ad357d2f90d5ab9dd2b6b9236a1e1f4f6e26c">Commit.</a></li> <li>Speech to text : switch to importlib instead of deprecated pkg_resources. <a target="_blank" href="https://commits.kde.org/kdenlive/5cfb3a17a9fc879e2bf5aa5b297e459e6613075f">Commit.</a></li> <li>Multi guides export: replace slash and backslash in section names to fix rendering. <a target="_blank" href="https://commits.kde.org/kdenlive/c288dab07d836cada8d668944cde088fd4238b33">Commit.</a> Fixes bug <a target="_blank" href="https://bugs.kde.org/480845">#480845</a></li> <li>Fix moving grouped subtitles can corrupt timeline if doing an invalid move. <a target="_blank" href="https://commits.kde.org/kdenlive/b60edcf124ca06f36dc92632955cc548021cb7a0">Commit.</a></li> <li>Fix sequence corruption on project load. <a target="_blank" href="https://commits.kde.org/kdenlive/eadf5d11134fed8a1230d7866c770a3a64eb162c">Commit.</a> Fixes bug <a target="_blank" href="https://bugs.kde.org/480776">#480776</a></li> <li>Fix sort order not correctly restored, store it in project file. <a target="_blank" href="https://commits.kde.org/kdenlive/a49358ebf441e35192e52852866c242d0287250e">Commit.</a> Fixes issue <a target="_blank" href="https://invent.kde.org/multimedia/kdenlive/-/issues/1817">#1817</a></li> <li>Ensure closed timeline sequences have a transparent background on opening. <a target="_blank" href="https://commits.kde.org/kdenlive/f6a10cbd665588d491d7bd275bd2717b723d28ec">Commit.</a> Fixes bug <a target="_blank" href="https://bugs.kde.org/480734">#480734</a></li> <li>Fix Arrow down cannot move to lower track if subtitles track is active. <a target="_blank" href="https://commits.kde.org/kdenlive/893a2f00e59a8512497673a8a9423d2aa9dcb7f6">Commit.</a></li> <li>Enforce refresh on monitor fullscreen switch (fixes incorrectly placed image). <a target="_blank" href="https://commits.kde.org/kdenlive/8ff2ccf97f2968cac07d7b569a99ac2093f3f845">Commit.</a></li> <li>Fix audio lost when replacing clip in timeline with speed change. <a target="_blank" href="https://commits.kde.org/kdenlive/21718281abb1cdc0ce72c2b25adc09cb928536ac">Commit.</a> Fixes issue <a target="_blank" href="https://invent.kde.org/multimedia/kdenlive/-/issues/1815">#1815</a></li> <li>Fix duplicated filenames or multiple uses not correctly handled in archiving. <a target="_blank" href="https://commits.kde.org/kdenlive/273b8d99070578eb4af93aeb88adbc51bcd9603a">Commit.</a> Fixes bug <a target="_blank" href="https://bugs.kde.org/421567">#421567</a>. Fixes bug <a target="_blank" href="https://bugs.kde.org/456346">#456346</a></li> <li>Fix multiple archiving issues. <a target="_blank" href="https://commits.kde.org/kdenlive/ec64132e1a8f9b1e79013b5ff90f5b72e9f2b7d4">Commit.</a> Fixes bug <a target="_blank" href="https://bugs.kde.org/456346">#456346</a></li> <li>Do not hide info message on render start. <a target="_blank" href="https://commits.kde.org/kdenlive/1acb8719eb5028d6c59be8f1f7598e675050cc8b">Commit.</a></li> <li>Fix Nvidia transcoding. <a target="_blank" href="https://commits.kde.org/kdenlive/331fefcf8df7b504d8d93439193c9751b52e0a51">Commit.</a> See issue <a target="_blank" href="https://invent.kde.org/multimedia/kdenlive/-/issues/1814">#1814</a></li> <li>Fix possible sequence corruption. <a target="_blank" href="https://commits.kde.org/kdenlive/bad2ff7babc8e50d097c44b5f839b852f279a1a7">Commit.</a> Fixes bug <a target="_blank" href="https://bugs.kde.org/480398">#480398</a></li> <li>Fix sequences folder id not correctly restored on project opening. <a target="_blank" href="https://commits.kde.org/kdenlive/5e89a6dadddd8709031569cb56a777b0961d06ad">Commit.</a></li> <li>Fix duplicate sequence not creating undo entry. <a target="_blank" href="https://commits.kde.org/kdenlive/4ae7c24d5936652b94de187edf28d21457b7f21a">Commit.</a> See bug <a target="_blank" href="https://bugs.kde.org/480398">#480398</a></li> <li>Fix drag clip at beginning of timeline sometimes loses focus. <a target="_blank" href="https://commits.kde.org/kdenlive/f2c1284e21f44a9a18cd6a8ed38b69545f6871c8">Commit.</a></li> <li>Fix luma files not correctly checked on document open, resulting in change to luma transitions. <a target="_blank" href="https://commits.kde.org/kdenlive/c7b4620046c5de48a678d94133c936c5c5dfa342">Commit.</a> Fixes bug <a target="_blank" href="https://bugs.kde.org/480343">#480343</a></li> <li>[CD] Run macOS Qt5 only on manual trigger. <a target="_blank" href="https://commits.kde.org/kdenlive/39c1c59478540b03b0fff0a9e5e8d4230f895c61">Commit.</a></li> <li>Fix group move corrupting undo. <a target="_blank" href="https://commits.kde.org/kdenlive/57721eb6ef4a5772f688757ff80cec1ca8f8bd2f">Commit.</a> Fixes bug <a target="_blank" href="https://bugs.kde.org/480348">#480348</a></li> <li>Add FFv1 render preset to replace non working utvideo. <a target="_blank" href="https://commits.kde.org/kdenlive/e2f5268d7b9c83a05f16fa48cb590de1a8dad892">Commit.</a></li> <li>Fix possible crash on layout switch (with Qt in debug mode), fix mixer label overlap. <a target="_blank" href="https://commits.kde.org/kdenlive/5fd2ea6f35ece30b94f45c97d1e07f7990a89b4f">Commit.</a></li> <li>Hide timeline clip effect button on low zoom. <a target="_blank" href="https://commits.kde.org/kdenlive/e5ec5e82d85d76ed994bb960a2c603ceb9936a8c">Commit.</a> Fixes issue <a target="_blank" href="https://invent.kde.org/multimedia/kdenlive/-/issues/1802">#1802</a></li> <li>Fix subtitles not covering transparent zones. <a target="_blank" href="https://commits.kde.org/kdenlive/42cf0cbeef4058d6f1a7753fcbeb93ed6cbac081">Commit.</a> Fixes bug <a target="_blank" href="https://bugs.kde.org/480350">#480350</a></li> <li>Group resize: don&#8217;t allow resizing a clip to length &lt; 1. <a target="_blank" href="https://commits.kde.org/kdenlive/7a56275032b3c1de3d1845f5e9b8681dcc047f6b">Commit.</a> Fixes bug <a target="_blank" href="https://bugs.kde.org/480348">#480348</a></li> <li>Luma fixes: silently autofix luma paths for AppImage projects. Try harder to find matching luma in list, create thumbs in another thread so we don&#8217;t block the ui. <a target="_blank" href="https://commits.kde.org/kdenlive/1363461fcfc2261fea64d840ebefe3f9f85acd93">Commit.</a></li> <li>Fix crash cutting grouped overlapping subtitles. Don&#8217;t allow the cut anymore, add test. <a target="_blank" href="https://commits.kde.org/kdenlive/281972a5c12d808aa3664c5273b32ec3462c090e">Commit.</a> Fixes bug <a target="_blank" href="https://bugs.kde.org/480316">#480316</a></li> <li>Remove unused var. <a target="_blank" href="https://commits.kde.org/kdenlive/4878e41f0b5037cdbe92f69b6ae443f655dcd5e5">Commit.</a></li> <li>Effect stack: don&#8217;t show drop marker if drop doesn&#8217;t change effect order. <a target="_blank" href="https://commits.kde.org/kdenlive/411dc01e75aea35fffa5499d8c4a688654305b67">Commit.</a></li> <li>Try to fix crash dragging effect on Mac. <a target="_blank" href="https://commits.kde.org/kdenlive/7df3e7f26a640143f407bd6bd58333f0026c2520">Commit.</a></li> <li>Another try to fix monitor offset on Mac. <a target="_blank" href="https://commits.kde.org/kdenlive/f9666386cc1dc12fa825d3738f0acc2e96f99285">Commit.</a></li> <li>Optimize some of the timeline qml code. <a target="_blank" href="https://commits.kde.org/kdenlive/f34b2779ea579eb3c7d8782d67d66960ca4d6fc4">Commit.</a></li> <li>Fix DocumentChecker model directly setting items and incorrect call to columnCount() in index causing freeze in Qt6. <a target="_blank" href="https://commits.kde.org/kdenlive/92b881dfa23c82363fd05a330ceba06bb1401119">Commit.</a></li> <li>Fix clip monitor not updating when clicking in a bin column like date or description. <a target="_blank" href="https://commits.kde.org/kdenlive/1e9f669c61c3d85ff2ad47084e0fe5decf20d664">Commit.</a> Fixes bug <a target="_blank" href="https://bugs.kde.org/480148">#480148</a></li> <li>Ensure we also check &#8220;consumer&#8221; producers on doc opening (playlist with a different fps). <a target="_blank" href="https://commits.kde.org/kdenlive/cf05ec42c6b1de82821060879aac2d1e29d1a000">Commit.</a></li> <li>Fix glaxnimate animation not parsed by documentchecker, resulting in empty animations without warn if file is not found. <a target="_blank" href="https://commits.kde.org/kdenlive/1f356d6724c2cb87ce7539176002e284116045aa">Commit.</a></li> <li>Fix NVidia encoding with recent FFmpeg. <a target="_blank" href="https://commits.kde.org/kdenlive/50ae0995ce72589495b92de68c036f5b1171b1fe">Commit.</a> See issue <a target="_blank" href="https://invent.kde.org/multimedia/kdenlive/-/issues/1814">#1814</a></li> <li>Fix clip name offset in timeline for clips with mixes. <a target="_blank" href="https://commits.kde.org/kdenlive/d36e2e18bf7670f8a78c0d7803e50fa71ba1f8a0">Commit.</a></li> <li>Better way to disable building lumas in tests. <a target="_blank" href="https://commits.kde.org/kdenlive/ede3adae1899e6a7a106803470c7b3e129952063">Commit.</a></li> <li>Don&#8217;t build lumas for tests. <a target="_blank" href="https://commits.kde.org/kdenlive/ec4dc0c72fff4c0fec3a79158b9c69b0a7bc5f5b">Commit.</a></li> <li>Fix Mac compilation. <a target="_blank" href="https://commits.kde.org/kdenlive/778e79505c72278abe583e3e46023ac8422a1a8b">Commit.</a></li> <li>Fix data install path on Windows with Qt6. <a target="_blank" href="https://commits.kde.org/kdenlive/49ac57eb695f444e36cb0dcb69eba984b522508d">Commit.</a></li> <li>Fix ridiculously slow recursive search. <a target="_blank" href="https://commits.kde.org/kdenlive/7e40f7fcd0b93bfb8aed82c3da74383ef18cf51c">Commit.</a></li> <li>Fix start playing at end of timeline. <a target="_blank" href="https://commits.kde.org/kdenlive/c647e0861095bc893a53628da993668f07cf4201">Commit.</a> Fixes bug <a target="_blank" href="https://bugs.kde.org/479994">#479994</a></li> <li>Try to fix mac monitor vertical offset. <a target="_blank" href="https://commits.kde.org/kdenlive/47c251bbe46d79bd54e0ac356db7d93af559c51b">Commit.</a></li> <li>Don&#8217;t display useless link when effect category is selected. <a target="_blank" href="https://commits.kde.org/kdenlive/252f93764e6f642f384804fd1ef8eb6faab7b4c2">Commit.</a></li> <li>Fix save clip zone from timeline adding an extra frame. <a target="_blank" href="https://commits.kde.org/kdenlive/fba6a141d49b64d6bc463e2d7ea5478d82f33789">Commit.</a> Fixes bug <a target="_blank" href="https://bugs.kde.org/480005">#480005</a></li> <li>Fix clips with mix cannot be cut, add test. <a target="_blank" href="https://commits.kde.org/kdenlive/bfa290bf3ce6feae063fc8ceccde7a7b50036530">Commit.</a> Fixes issue <a target="_blank" href="https://invent.kde.org/multimedia/kdenlive/-/issues/1809">#1809</a>. See bug <a target="_blank" href="https://bugs.kde.org/479875">#479875</a></li> <li>Fix cmd line rendering. <a target="_blank" href="https://commits.kde.org/kdenlive/5534719af52fec578302140a80abba3ed8da11d3">Commit.</a></li> <li>Windows: fix monitor image vertical offset. <a target="_blank" href="https://commits.kde.org/kdenlive/c6d991206cb3cb37b6d25c573d6b659922ff0a48">Commit.</a></li> <li>Fix project monitor loop clip. <a target="_blank" href="https://commits.kde.org/kdenlive/342ce4d372f389140f8e21ff6df62b2c10de006f">Commit.</a></li> <li>Add test for recent sequence effect bug. <a target="_blank" href="https://commits.kde.org/kdenlive/ee873cf885b618e67b56c71fc06295040a87e709">Commit.</a> See bug <a target="_blank" href="https://bugs.kde.org/479788">#479788</a></li> <li>Fix tests (ensure we don&#8217;t try to discard a task twice). <a target="_blank" href="https://commits.kde.org/kdenlive/da2ad2dbe07d1cd99eeb842fc56b49b50fbcd836">Commit.</a></li> <li>Blacklist MLT Qt5 module when building against Qt6. <a target="_blank" href="https://commits.kde.org/kdenlive/a3d52b2b3258a9c250dd3ad27d618d024beee4c6">Commit.</a></li> <li>Fix monitor offset when zooming back to 1:1. <a target="_blank" href="https://commits.kde.org/kdenlive/4b00e27e5b9a94cba3836875c4671bb8884c5880">Commit.</a></li> <li>Fix sequence effects lost. <a target="_blank" href="https://commits.kde.org/kdenlive/7c49766b45127af863112b8ff61e3a5be6668dbf">Commit.</a> Fixes bug <a target="_blank" href="https://bugs.kde.org/479788">#479788</a></li> <li>Avoid white bg label in status bar on startup. <a target="_blank" href="https://commits.kde.org/kdenlive/caa91f9b0836c76cf29c12e07afe2a137c5632ae">Commit.</a></li> <li>Fix qml warnings. <a target="_blank" href="https://commits.kde.org/kdenlive/eb5026ce0a3b1b77886912333750747215387f85">Commit.</a></li> <li>Fix clicking on clip fade indicator sometimes creating a 2 frames fade instead of defined duration. <a target="_blank" href="https://commits.kde.org/kdenlive/e09496c6842eb3f6aca39c2029cf604f34437882">Commit.</a></li> <li>Improved fix for center crop issue. <a target="_blank" href="https://commits.kde.org/kdenlive/159c8e4907a2deb43b424c3dcb15e44fbdec8927">Commit.</a></li> <li>Fix center crop adjust not covering full image. <a target="_blank" href="https://commits.kde.org/kdenlive/d9683c991e1342891a3007e79c73d721d54eabeb">Commit.</a> Fixes bug <a target="_blank" href="https://bugs.kde.org/464974">#464974</a></li> <li>Fix various Qt6 mouse click issues in monitors. <a target="_blank" href="https://commits.kde.org/kdenlive/83042c2a0a696bf77c9d7b8c5bca6a37fb6db19a">Commit.</a></li> <li>Disable Movit until it&#8217;s stable (should have done that a long time ago). <a target="_blank" href="https://commits.kde.org/kdenlive/41b74bd282e8a96be3b75f423f8101fa506d858d">Commit.</a></li> <li>Fix Qt5 startup crash. <a target="_blank" href="https://commits.kde.org/kdenlive/efda0ab818ab32707501a992040dd91946030cd4">Commit.</a></li> <li>Add time to undo action text. <a target="_blank" href="https://commits.kde.org/kdenlive/bcffeef34eb6bcdd79fa9ce515e2490128c70cf4">Commit.</a></li> <li>Fix cannot save list of project files. <a target="_blank" href="https://commits.kde.org/kdenlive/76f3122a26d462f57dbab654f0727d7d6054c494">Commit.</a> Fixes bug <a target="_blank" href="https://bugs.kde.org/479370">#479370</a></li> <li>Add missing license info. <a target="_blank" href="https://commits.kde.org/kdenlive/e4c248d7954c85c1d3ef7a0d6bf9e289f3075f8c">Commit.</a></li> <li>[Nightly Flatpak] Replace Intel Media SDK by OneVPL Runtime. <a target="_blank" href="https://commits.kde.org/kdenlive/79a374ab29de8b7e535905b247e62fae4a9aa2c2">Commit.</a></li> <li>[Nightly Flatpak] Fix and update python deps. <a target="_blank" href="https://commits.kde.org/kdenlive/d642020b370c464f983933d89438f1477b15e512">Commit.</a></li> <li>[Nightly Flatpak] Switch to Qt6. <a target="_blank" href="https://commits.kde.org/kdenlive/1fad61eba13ab1000edcbf9b18c8715260a81b42">Commit.</a></li> <li>Fix editing title clip with a mix can mess up the track. <a target="_blank" href="https://commits.kde.org/kdenlive/16888cdf8cd62e68c4781f06d01d4de9f778f27c">Commit.</a> Fixes bug <a target="_blank" href="https://bugs.kde.org/478686">#478686</a></li> <li>Use Qt6 by default, fallback to Qt5. <a target="_blank" href="https://commits.kde.org/kdenlive/3c104cdee6abde311140187ad3f07e31b555abb6">Commit.</a></li> <li>Fix audio mixer cannot enter precise values with keyboard. <a target="_blank" href="https://commits.kde.org/kdenlive/3acfa977512af7f48d5172caff8afbc152b181ad">Commit.</a></li> <li>[CI] Require tests with Qt6 too. <a target="_blank" href="https://commits.kde.org/kdenlive/5921e805b058c376f7758f04c786604c9d65287b">Commit.</a></li> <li>Add FreeBSD Qt6 CI. <a target="_blank" href="https://commits.kde.org/kdenlive/865b39f87993a9b51b56a6bfb46c5f2beb7ac2d6">Commit.</a></li> <li>Apply i18n to percent values. <a target="_blank" href="https://commits.kde.org/kdenlive/c9e5385298ba6eaafd50066550a31ece0109c930">Commit.</a></li> <li>Show GPU in debug info. <a target="_blank" href="https://commits.kde.org/kdenlive/7f619d140214f93cf412abecc15ef956a1226613">Commit.</a></li> <li>Prevent, detect and possibly fix corrupted project files, fix feedback not displayed in project notes. <a target="_blank" href="https://commits.kde.org/kdenlive/7739b3a47296403bc08e07ea16c9e8edb4aa769c">Commit.</a> Fixes issue <a target="_blank" href="https://invent.kde.org/multimedia/kdenlive/-/issues/1804">#1804</a>. See bug <a target="_blank" href="https://bugs.kde.org/472849">#472849</a></li> <li>[nightly Flatpak] Add patch to fix v4l-utils. <a target="_blank" href="https://commits.kde.org/kdenlive/03214480ab79b49e9f31889ad6ce81a2566fd375">Commit.</a></li> <li>Update copyright to 2024. <a target="_blank" href="https://commits.kde.org/kdenlive/48c54746de3ac521e6db2b749b176c563558e31c">Commit.</a></li> <li>[nightly flatpak] fix v4l-utils once more. <a target="_blank" href="https://commits.kde.org/kdenlive/63fbe2e6b60c9cde096e13b90a9adfc1265ba8ad">Commit.</a></li> <li>[nightly Flatpak] v4l-utils uses meson now. <a target="_blank" href="https://commits.kde.org/kdenlive/b6931168c21584b24f955ca9b608c3495052f0ba">Commit.</a></li> <li>Don&#8217;t crash on first run. <a target="_blank" href="https://commits.kde.org/kdenlive/f9c10c37f5de54187933b2bc78aa2641ea013c5c">Commit.</a></li> <li>[nightly flatpak] Try to fix v4l-utils. <a target="_blank" href="https://commits.kde.org/kdenlive/15fa9613e751f49d36237fd957e7f721ff254422">Commit.</a></li> <li>[nightly flatpak] Cleanup. <a target="_blank" href="https://commits.kde.org/kdenlive/88098a2558c764c17890e8b22b03464858211f22">Commit.</a></li> <li>Get rid of dropped QtGraphicalEffects. <a target="_blank" href="https://commits.kde.org/kdenlive/3905cbac5beb57f0e9dd7b55e81d967dd33bb5e8">Commit.</a></li> <li>Fix qml warnings. <a target="_blank" href="https://commits.kde.org/kdenlive/2a996f6fef6cfde6bf9cb73e8908c9a54ca6c217">Commit.</a></li> <li>Qt6: fix subtitle editing in timeline. <a target="_blank" href="https://commits.kde.org/kdenlive/10c65e2d143edc0eba63ea71b91751bdb0769e94">Commit.</a></li> <li>Fix subtitles crashing on project load (incorrectly setting in/out snap points). <a target="_blank" href="https://commits.kde.org/kdenlive/12903c66ff3aa8cbcb5783b3eb6cbf834da7d22e">Commit.</a></li> <li>Test project&#8217;s active timeline is not always the first sequence. <a target="_blank" href="https://commits.kde.org/kdenlive/b245cb98d3cdd958b7752f9f885324928cfcacd2">Commit.</a></li> <li>Ensure secondary timelines are added to the project before being loaded. <a target="_blank" href="https://commits.kde.org/kdenlive/a8bc671690186cc924823aad687630154a18aefd">Commit.</a></li> <li>Ensure autosave is not triggered when project is still loading. <a target="_blank" href="https://commits.kde.org/kdenlive/2b4d441482d5b1e65b670578fa39c12bb9a0a3c1">Commit.</a></li> <li>Show GPU name in Wizard. <a target="_blank" href="https://commits.kde.org/kdenlive/464966c5dccb13d557a5f0943383c65b401ced42">Commit.</a></li> <li>Avoid converting bin icons to/from QVariant. <a target="_blank" href="https://commits.kde.org/kdenlive/0f5ea279e340f92efeb78013177979383049ba4d">Commit.</a></li> <li>[Nightly Flatpak] Update deps. <a target="_blank" href="https://commits.kde.org/kdenlive/cd4b361e45733ea6b8634d9c1ece683f92ab96e9">Commit.</a></li> <li>Fix Qt6 audio / video only clip drag broken from clip monitor. <a target="_blank" href="https://commits.kde.org/kdenlive/a1e0138754f04497d535df2aef3757321a9fd526">Commit.</a></li> <li>Fix rubber select incorrectly moving selected items when scrolling the view. <a target="_blank" href="https://commits.kde.org/kdenlive/905daa1bc0d98ed3d8edabd99e790a815d7feae2">Commit.</a></li> <li>Port away from jobclasses KIO header. <a target="_blank" href="https://commits.kde.org/kdenlive/f1f16fe074338cf84442258daf770c7267ac55da">Commit.</a></li> <li>Fix variable name shadowing. <a target="_blank" href="https://commits.kde.org/kdenlive/bc585037a683be9338ca4307a33da289de83b339">Commit.</a></li> <li>When switching timeline tab without timeline selection, don&#8217;t clear effect stack if it was showing a bin clip. <a target="_blank" href="https://commits.kde.org/kdenlive/8cfea6558f0825d149883079bb352745cdfa6304">Commit.</a></li> <li>Fix crash pressing del in empty effect stack. <a target="_blank" href="https://commits.kde.org/kdenlive/2534af5cf7ff0613a3f9f9c3f5a1e0bc17aa108f">Commit.</a></li> <li>Ensure check for HW accel is also performed if some non essential MLT module is missing. <a target="_blank" href="https://commits.kde.org/kdenlive/991708c15a5baaac3648a852e0c0de553530971e">Commit.</a></li> <li>Fix closed sequences losing properties, add more tests. <a target="_blank" href="https://commits.kde.org/kdenlive/cbfedf20301f7e2784f5a4202ae4063a9ccec3c6">Commit.</a></li> <li>Don&#8217;t attempt to load timeline sequences more than once. <a target="_blank" href="https://commits.kde.org/kdenlive/6c70720a02d2ea1cf07fd0a3159f227e4e421527">Commit.</a></li> <li>Fix &#8220;Sequence from selection&#8221; with single track. <a target="_blank" href="https://commits.kde.org/kdenlive/592a766bb3d360a8296e63ab9d9657c908f40c35">Commit.</a></li> <li>Refactor code for paste. <a target="_blank" href="https://commits.kde.org/kdenlive/a000d124685aaedf58bd8af2b621270ff173b538">Commit.</a></li> <li>Fix timeline groups lost after recent commit on project save. <a target="_blank" href="https://commits.kde.org/kdenlive/1219d88301db3e623765620c1a3c52a19f3a722c">Commit.</a></li> <li>Ensure we always use the correct timeline uuid on some clip operations. <a target="_blank" href="https://commits.kde.org/kdenlive/15ff451bb3236d9ca9e92a7186df26599aa8bfc8">Commit.</a></li> <li>Qt6: fix monitor image vertical offset. <a target="_blank" href="https://commits.kde.org/kdenlive/8bd053fffd886088e46ae86e9aa0b880f2713e08">Commit.</a></li> <li>Always keep all timeline models opened. <a target="_blank" href="https://commits.kde.org/kdenlive/339869651fa12c721d789a5a8dbd7dc734c62964">Commit.</a> See bug <a target="_blank" href="https://bugs.kde.org/478745">#478745</a></li> <li>Add animation: remember last used folder. <a target="_blank" href="https://commits.kde.org/kdenlive/895dff094ed0053847e4cae742b9f5e7b65e0304">Commit.</a> See bug <a target="_blank" href="https://bugs.kde.org/478688">#478688</a></li> <li>Fix KNS KF6 include. <a target="_blank" href="https://commits.kde.org/kdenlive/63d820a4aca55b3362efcbcd97d8d735821058df">Commit.</a></li> <li>Add missing include. <a target="_blank" href="https://commits.kde.org/kdenlive/2d48bddd3f5a62ada1634402061c2ccd64af2f87">Commit.</a></li> <li>Refresh effects list after downloading an effect. <a target="_blank" href="https://commits.kde.org/kdenlive/9a864f8a1bbefb2d7f53122e2387163c844da5b4">Commit.</a></li> <li>Fix crash searching for effect (recent regression). <a target="_blank" href="https://commits.kde.org/kdenlive/4c8d3403290b8fb6e9b332f94bbdd68a733d46e2">Commit.</a></li> <li>Fix audio or video only drag of subclips. <a target="_blank" href="https://commits.kde.org/kdenlive/5bc7dfa8030e9e305fab7d9af001ce71bdeb92ae">Commit.</a> Fixes bug <a target="_blank" href="https://bugs.kde.org/478660">#478660</a></li> <li>Fix editing title clip duration breaks title (recent regression). <a target="_blank" href="https://commits.kde.org/kdenlive/595df27561448484f11f9e961c25a0b1635c04af">Commit.</a></li> <li>Glaxnimate animations: use rawr format instead of Lottie by default. <a target="_blank" href="https://commits.kde.org/kdenlive/5665ab494b3f860df84e0810c26a2bf6376566f6">Commit.</a> Fixes bug <a target="_blank" href="https://bugs.kde.org/478685">#478685</a></li> <li>Effect Stack: remove color icons, fix mouse wheel seeking while scrolling. <a target="_blank" href="https://commits.kde.org/kdenlive/16fb257043db431862a8c1862f6fa6026a1a8a49">Commit.</a> See issue <a target="_blank" href="https://invent.kde.org/multimedia/kdenlive/-/issues/1786">#1786</a></li> <li>Fix timeline focus lost when dropping an effect on a clip. <a target="_blank" href="https://commits.kde.org/kdenlive/54fa7802df4005bc8dd74a3f5f3dec0a9ae5363b">Commit.</a></li> <li>Disable check for removable devices on Mac. <a target="_blank" href="https://commits.kde.org/kdenlive/e7804ec0a70d1a96c7a0ee624225d171cd8a4adc">Commit.</a></li> <li>[CD] Use Qt6 templates instead of custom magic. <a target="_blank" href="https://commits.kde.org/kdenlive/ed0cb840beaab19ae83d01637fd3362e91196826">Commit.</a></li> <li>Fix type in Purpose KF version check. <a target="_blank" href="https://commits.kde.org/kdenlive/fdc375c92d40102eeb8253bac1ce1dd407a2d966">Commit.</a></li> <li>Fix dropping lots of clips in Bin can cause freeze on abort. <a target="_blank" href="https://commits.kde.org/kdenlive/fbe28b20b09a51f97f26671c90b4f605a7c3103a">Commit.</a></li> <li>Right click on a mix now shows a mix menu (allowing deletion). <a target="_blank" href="https://commits.kde.org/kdenlive/b1da177c002c5abfa3e096fef48b6306da996fa2">Commit.</a> Fixes bug <a target="_blank" href="https://bugs.kde.org/442088">#442088</a></li> <li>Don&#8217;t add mixes to disabled tracks. <a target="_blank" href="https://commits.kde.org/kdenlive/6f91539ab0e6c6699156dcd85e0349ea74d2bbe3">Commit.</a> See bug <a target="_blank" href="https://bugs.kde.org/442088">#442088</a></li> <li>Allow adding a mix without selection. <a target="_blank" href="https://commits.kde.org/kdenlive/ab2169122e150697bf07f9f41695310df685076b">Commit.</a> See bug <a target="_blank" href="https://bugs.kde.org/442088">#442088</a></li> <li>Fix proxied playlist clips (like stabilized clips) rendered as interlaced. <a target="_blank" href="https://commits.kde.org/kdenlive/fc3eb0b43282f22d07919a200d2e609ad3645d30">Commit.</a> Fixes bug <a target="_blank" href="https://bugs.kde.org/476716">#476716</a></li> <li>[CI] Try different approach for macOS signing. <a target="_blank" href="https://commits.kde.org/kdenlive/7ebfade290a833891d46f93b336fc305014e8dab">Commit.</a></li> <li>[CI] Signing test, explicitly source env for now. <a target="_blank" href="https://commits.kde.org/kdenlive/5a083f2c2db94d20aed2358d71a8d78d16127323">Commit.</a></li> <li>Camcorder proxies: ensure we have the same count of audio streams and if not, create a new proxy with audio from original clip (Fixes Sony FX6 proxies). <a target="_blank" href="https://commits.kde.org/kdenlive/b404f5838bb768cc56cf82302bde7e3b7ff1f532">Commit.</a></li> <li>Fix typo. <a target="_blank" href="https://commits.kde.org/kdenlive/a83e15a04a64894e549e7dfe0dbf514e89c31326">Commit.</a> Fixes issue <a target="_blank" href="https://invent.kde.org/multimedia/kdenlive/-/issues/1800">#1800</a></li> <li>[CI] Re-enable Flatpak. <a target="_blank" href="https://commits.kde.org/kdenlive/72deeb4b3aa173c5e86f731c3f450fd8dc3caf35">Commit.</a></li> <li>[CI] More fixes for the signing test. <a target="_blank" href="https://commits.kde.org/kdenlive/4eb40a8421b78a82717d5fc1f1bd12be27b1f187">Commit.</a></li> <li>[CI] Fixes for the signing test. <a target="_blank" href="https://commits.kde.org/kdenlive/2f452fc71904ddef3a6745d391148aed50a57ac6">Commit.</a></li> <li>[CI] Add macOS signing test. <a target="_blank" href="https://commits.kde.org/kdenlive/f9afcc9eb5b258a808ac2047f1280cb51de348ab">Commit.</a></li> <li>[CI] Fix pipeline after recent renaming upstream. <a target="_blank" href="https://commits.kde.org/kdenlive/442cfbf7df9e3cd1f03e88e05b9e2ee92ff0e613">Commit.</a></li> <li>Qml warning fixes. <a target="_blank" href="https://commits.kde.org/kdenlive/3b5a7c1ab7a2e5e7ad3bd32c8b64fb928580d123">Commit.</a></li> <li>Add subtitle manager to project mneu. <a target="_blank" href="https://commits.kde.org/kdenlive/409401b4ca4e5f7ddabbea3c4faed157dfa1e760">Commit.</a></li> <li>Fix groups tests. <a target="_blank" href="https://commits.kde.org/kdenlive/8b039ed318a3f6618b4b93e7f924591674c3d93f">Commit.</a></li> <li>Fix transparency lost on rendering nested sequences. <a target="_blank" href="https://commits.kde.org/kdenlive/8a7ed69df3b6588a7b372ce704ede829a7a752f8">Commit.</a> Fixes bug <a target="_blank" href="https://bugs.kde.org/477771">#477771</a></li> <li>Fix guides categories not applied on new document. <a target="_blank" href="https://commits.kde.org/kdenlive/34e644dba8a2131aea890f7bac75776483e7fa28">Commit.</a> Fixes bug <a target="_blank" href="https://bugs.kde.org/477617">#477617</a></li> <li>Fix selecting several individual items in a group. <a target="_blank" href="https://commits.kde.org/kdenlive/9b0c80095fd3221c58eb6c9e0e918db07ea0caf0">Commit.</a></li> <li>Add import/export to subtitle track manager. <a target="_blank" href="https://commits.kde.org/kdenlive/72d062ced7a3b565beae4e8c664daa1473a9bc3d">Commit.</a></li> <li>Drag &amp; drop of effect now applies to all items in a group. <a target="_blank" href="https://commits.kde.org/kdenlive/1cf8af8690805774ee57e8d336ef8d00de0798f9">Commit.</a> See issue <a target="_blank" href="https://invent.kde.org/multimedia/kdenlive/-/issues/1327">#1327</a></li> <li>New: select an item in a group with Alt+click. You can then perform operations on that clip only: delete, move. <a target="_blank" href="https://commits.kde.org/kdenlive/f944f6108ba7ae84dbf088ac04be4e8b2cced928">Commit.</a> See issue <a target="_blank" href="https://invent.kde.org/multimedia/kdenlive/-/issues/1327">#1327</a></li> <li>Consistency: activating an effect in the effects list now consistently applies to all selected items (Bin or Timeline). <a target="_blank" href="https://commits.kde.org/kdenlive/cef2037aa619d6aafec53eed66b5afe5a0cb6790">Commit.</a></li> <li>Cleanup assets link to documentation. <a target="_blank" href="https://commits.kde.org/kdenlive/c638a54404d45851e66d4dc6af0ba74711352406">Commit.</a></li> <li>Check MLT&#8217;s render profiles for missing codecs. <a target="_blank" href="https://commits.kde.org/kdenlive/33a9731f86366b936ed5eddbbd77285751431bd5">Commit.</a> See bug <a target="_blank" href="https://bugs.kde.org/475029">#475029</a></li> <li>Various fixes for python setup. <a target="_blank" href="https://commits.kde.org/kdenlive/6e58cba3f9aef7578df95dad24e3231e98fa2f2f">Commit.</a></li> <li>Fix Qt6 compilation. <a target="_blank" href="https://commits.kde.org/kdenlive/43857f1508bdc6838780fbed3e7e1122e66ef0bb">Commit.</a></li> <li>FIx incorreclty placed ifdef. <a target="_blank" href="https://commits.kde.org/kdenlive/6484f91c69fa920920ea809c3efcb2156927bed3">Commit.</a></li> <li>Start integrating some of the new MLT keyframe types. <a target="_blank" href="https://commits.kde.org/kdenlive/fbef83b0fb68407919e4fea9d9c384b827bef57a">Commit.</a></li> <li>Various fixes for python venv install. <a target="_blank" href="https://commits.kde.org/kdenlive/4a6ea1d314862db20cf5572153601ba881067faa">Commit.</a></li> <li>Fix missing argument in constructor call. <a target="_blank" href="https://commits.kde.org/kdenlive/f2300e7153d445845fa403e68c9373cf74494619">Commit.</a></li> <li>Fix crash on auto subtitle with subtitle track selected. <a target="_blank" href="https://commits.kde.org/kdenlive/8f78924854f2650a1490039d9ca2b73e166b8cdb">Commit.</a></li> <li>Fix python install stuck. <a target="_blank" href="https://commits.kde.org/kdenlive/64e346bcc77572f1f8d54f448b0492fbec9e712e">Commit.</a></li> <li>Improve timeline clip effect indicator. <a target="_blank" href="https://commits.kde.org/kdenlive/07711507549c919497254028dd6a96d1887bfcd5">Commit.</a> See issue <a target="_blank" href="https://invent.kde.org/multimedia/kdenlive/-/issues/445">#445</a></li> <li>Work/multisubtitles. <a target="_blank" href="https://commits.kde.org/kdenlive/0a2411aaf0c6183bfdeaaf9d630cf922b57c8d4b">Commit.</a></li> <li>Fix some issues in clip monitor&#8217;s last clip menu. <a target="_blank" href="https://commits.kde.org/kdenlive/9476536118c1f079450fa930a52ec5e69cd82789">Commit.</a></li> <li>Various fixes and improved feedback for Python venv, add option to run STT on full project. <a target="_blank" href="https://commits.kde.org/kdenlive/60a922adab246eb88b683c7e219a4a4dcb5a86a0">Commit.</a></li> <li>Text corrections. <a target="_blank" href="https://commits.kde.org/kdenlive/299bfa750cd448ee2e255846ca39cccfed8ebfe2">Commit.</a></li> <li>Fix typos. <a target="_blank" href="https://commits.kde.org/kdenlive/d7967bf501f1df9f0020401f749794888678f99b">Commit.</a></li> <li>If users try to render a project containing variable framerate clips, show a warning and propose to transcode these clips. <a target="_blank" href="https://commits.kde.org/kdenlive/3aba11ca37aca20804d1eb9cc0c9b79e098783ab">Commit.</a></li> <li>Fix qml warning (incorrect number of args). <a target="_blank" href="https://commits.kde.org/kdenlive/93a77653d71ba62a0bb4a914471999ae724e2752">Commit.</a></li> <li>Fix qt6 timeline drag. <a target="_blank" href="https://commits.kde.org/kdenlive/f76888f80e45654358f30bbf4ca04235e269cc49">Commit.</a></li> <li>Flatpak: Use id instead of app-id. <a target="_blank" href="https://commits.kde.org/kdenlive/589e9a73994266531b25bb1f7de58149fa903fb1">Commit.</a></li> <li>Fix audio stem export. <a target="_blank" href="https://commits.kde.org/kdenlive/807d0ddd9a788371c7347341a0a315feb28cb0b3">Commit.</a></li> <li>Add link to our documentation in the effects/composition info. <a target="_blank" href="https://commits.kde.org/kdenlive/a2ac5956893899715ff520ecfe2193844b492de2">Commit.</a></li> <li>Qt6: fix monitor background and a few qml mouse issues. <a target="_blank" href="https://commits.kde.org/kdenlive/41b21301005e14ea759842cd8edee5feaf441488">Commit.</a></li> <li>Rename ObjectType to KdenliveObjectType. <a target="_blank" href="https://commits.kde.org/kdenlive/7edaffc602503e61bef73327965786727bf782f7">Commit.</a></li> <li>We need to use Objective C++ for MetalVideoWidget. <a target="_blank" href="https://commits.kde.org/kdenlive/498c790fda6957c88c1086fb082f6ebc7ce252cb">Commit.</a></li> <li>When pasting clips to another project, disable proxies. <a target="_blank" href="https://commits.kde.org/kdenlive/12c29996f60c81e2175c8812eb407fd5233e2b33">Commit.</a> Fixes issue <a target="_blank" href="https://invent.kde.org/multimedia/kdenlive/-/issues/1785">#1785</a></li> <li>Remove unneeded lambda capture. <a target="_blank" href="https://commits.kde.org/kdenlive/51ca0609f81dec333214a62fd4af60caa359717f">Commit.</a></li> <li>Fix monitor display on Windows/Qt6. <a target="_blank" href="https://commits.kde.org/kdenlive/0ee4463b544719a3793e11a0bd529b15446419b5">Commit.</a></li> <li>Cleanup readme and flatpak nightly manifests. <a target="_blank" href="https://commits.kde.org/kdenlive/f8ec8a54c7bbe7a5eba5164061c95ba60d79dbcb">Commit.</a></li> <li>[Nightly Flatpak] Do not build tests. <a target="_blank" href="https://commits.kde.org/kdenlive/202a4b268da3ed7a060ba2b18ff190ec6a07b221">Commit.</a></li> <li>Fix tests broken by last commit. <a target="_blank" href="https://commits.kde.org/kdenlive/8c6980cff5bc61d59b042c611bf1066445a5d51d">Commit.</a></li> <li>Add list of last opened clips in Clip Monitor&#8217;s clip name. <a target="_blank" href="https://commits.kde.org/kdenlive/23c3ff1688f311dc0a0e24b2393e99eb5ef4100a">Commit.</a></li> <li>Add Craft Jobs for Qt6. <a target="_blank" href="https://commits.kde.org/kdenlive/397588d06b72d6e98264fae53862380516305c14">Commit.</a></li> <li>[CI] Switch to new template include format. <a target="_blank" href="https://commits.kde.org/kdenlive/9a6779e24257edab830147c97cefbd12169cf769">Commit.</a></li> <li>[CI] Add reuse-lint job. <a target="_blank" href="https://commits.kde.org/kdenlive/17faca7c7962bb1819eb0b204348f96250c12265">Commit.</a></li> <li>Chore: REUSE linting for compliance. <a target="_blank" href="https://commits.kde.org/kdenlive/fd21ebec903116f7e4e4aa63b8af560ea5012d30">Commit.</a></li> <li>Don&#8217;t check for cache space on every startup. <a target="_blank" href="https://commits.kde.org/kdenlive/ee3b9ea2c5dfc2a8a494ad72f2df61d9b812b362">Commit.</a></li> <li>Don&#8217;t allow creating profile with non standard and non integer fps from a clip. <a target="_blank" href="https://commits.kde.org/kdenlive/dfd6974cd29a011eec404bcb50846f98dcf7404e">Commit.</a> See issue <a target="_blank" href="https://invent.kde.org/multimedia/kdenlive/-/issues/476754">#476754</a></li> <li>Remove unmaintained changelog file. <a target="_blank" href="https://commits.kde.org/kdenlive/10ffbee0443496898c54d418c265b66a2188ca99">Commit.</a></li> <li>Automatically check for updates based on the app version (no network connection at this point). <a target="_blank" href="https://commits.kde.org/kdenlive/7841d94c5d5da304a14afd52a046811b7c3a887d">Commit.</a></li> <li>Fix project duration for cli rendering. <a target="_blank" href="https://commits.kde.org/kdenlive/10b5764437b46e5d32a59347c910b0462fa38f76">Commit.</a></li> <li>Fix clips with missing proxy incorrectly loaded on project opening. <a target="_blank" href="https://commits.kde.org/kdenlive/8669befcac8067e11c8b6c11fe62fdaa509c3fb7">Commit.</a></li> <li>Fix compilation with KF &lt; 5.100. <a target="_blank" href="https://commits.kde.org/kdenlive/246a87a41223f324e8e25ac80a04a91f1a4e8344">Commit.</a></li> <li>Add undo redo to text based edit. <a target="_blank" href="https://commits.kde.org/kdenlive/352e6f9111e64a21df67d878ac3b561324638dba">Commit.</a></li> <li>Check and remove circular dependencies in tractors. <a target="_blank" href="https://commits.kde.org/kdenlive/fda32639b24c6e53250731ec65626f2f66500059">Commit.</a> Fixes bug <a target="_blank" href="https://bugs.kde.org/471359">#471359</a></li> <li>Hide resize handle on tiny clips with mix. <a target="_blank" href="https://commits.kde.org/kdenlive/ec072f528ee62f7d2dec16ee6409208a6ab62e4a">Commit.</a></li> <li>Fix minor typos. <a target="_blank" href="https://commits.kde.org/kdenlive/31809c20fe9fa939a8ccd5958515f3669e72d3e7">Commit.</a></li> <li>Adapt to new KFileWidget API. <a target="_blank" href="https://commits.kde.org/kdenlive/ca78b3a85d6a4492edf94bc00848b127220d5cbd">Commit.</a></li> <li>Fix mix not always deleted when moving grouped clips on same track. <a target="_blank" href="https://commits.kde.org/kdenlive/db956277068def5833c7939310f5d6d34538247b">Commit.</a></li> <li>Fix python venv for Windows. <a target="_blank" href="https://commits.kde.org/kdenlive/4c7bb0e4f11b6aa0c0b62d3dbd445e5676b44189">Commit.</a></li> <li>Fix timeremap. <a target="_blank" href="https://commits.kde.org/kdenlive/b89b5586d1ddb89fd2b0d83045c87d97709db562">Commit.</a></li> <li>Fix replace clip keeping audio index from previous clip, sometimes breaking audio. <a target="_blank" href="https://commits.kde.org/kdenlive/58e9d76d375c59e6fd9c2bdc128edf9d660d950f">Commit.</a> See bug <a target="_blank" href="https://bugs.kde.org/476612">#476612</a></li> <li>Create sequence from selection: ensure we have enough audio tracks for AV groups. <a target="_blank" href="https://commits.kde.org/kdenlive/b2327cd8a92c2b0c4d9d5892ef5cb7cf270c708e">Commit.</a></li> <li>Fix timeline duration incorrect after create sequence from timeline selection. <a target="_blank" href="https://commits.kde.org/kdenlive/c475271b0cd6a37f44327ddf1d4e9392e99136cb">Commit.</a></li> <li>Add a Saving Successful event, so people can easily play a sound or show a popup on save if wanted. <a target="_blank" href="https://commits.kde.org/kdenlive/50d1faeb99b1b0b16ebdb73dc490de6a87f49a64">Commit.</a> See issue <a target="_blank" href="https://invent.kde.org/multimedia/kdenlive/-/issues/1767">#1767</a></li> <li>Fix project duration not updating when moving the last clip of a track to another non last position. <a target="_blank" href="https://commits.kde.org/kdenlive/20cd25d75ec46793324ee8ad16fa7db85af90a44">Commit.</a> See bug <a target="_blank" href="https://bugs.kde.org/476493">#476493</a></li> <li>Update file kdenlive.notifyrc. <a target="_blank" href="https://commits.kde.org/kdenlive/361397bc05d5eecec06de045c2a30f0c2f39848e">Commit.</a></li> <li>Duplicate .notifyrc file to have both KF5 and KF6 versions. <a target="_blank" href="https://commits.kde.org/kdenlive/8258190359f04286a83955c02e36e82b0c1f2a97">Commit.</a></li> <li>Don&#8217;t lose subtitle styling when switching to another sequence. <a target="_blank" href="https://commits.kde.org/kdenlive/73a1c265e84641f6e0b7962514a76c2b85c506fc">Commit.</a> Fixes bug <a target="_blank" href="https://bugs.kde.org/476544">#476544</a></li> <li>Port from deprecated ksmserver calls. <a target="_blank" href="https://commits.kde.org/kdenlive/09bb185e21e695ed3fbd959cbe591622b5c8ded7">Commit.</a></li> <li>Allow aborting clip import operation. <a target="_blank" href="https://commits.kde.org/kdenlive/c87979cea7ac417c23268a1842cfdfa3f8ecfb2a">Commit.</a></li> <li>Ensure no urls are added to file watcher when interruping a load operation. <a target="_blank" href="https://commits.kde.org/kdenlive/79b0c5291b46945dbacbb28774e468e409466047">Commit.</a></li> <li>Fix crash dropping url to Library. <a target="_blank" href="https://commits.kde.org/kdenlive/d6da8910a1fe2f122517a2747a4daa63e552a6cf">Commit.</a></li> <li>When dropping multiple files in project bin, improve import speed by not checking if every file is on a remote drive. <a target="_blank" href="https://commits.kde.org/kdenlive/869964e34ca9b8fef7d6bfbac7a191a805fe8274">Commit.</a></li> <li>Fix titler shadow incorrectly pasted on selection. <a target="_blank" href="https://commits.kde.org/kdenlive/81d5f4e1aeb6611286d69b385320b38b772a6858">Commit.</a> Fixes bug <a target="_blank" href="https://bugs.kde.org/476393">#476393</a></li> <li>Sequences folder now has a colored icon and is always displayed on top. <a target="_blank" href="https://commits.kde.org/kdenlive/d4704a90ab7e599559275cb0247dbd416ebe27bd">Commit.</a></li> <li>Fix Qt5 compilation. <a target="_blank" href="https://commits.kde.org/kdenlive/219972f045e864dba40ffd018eb58b0ebaa06974">Commit.</a></li> <li>Fix Qt5 compilation take 3. <a target="_blank" href="https://commits.kde.org/kdenlive/44df76d8b98037777a0824df77884396aa283948">Commit.</a></li> <li>Fix Qt5 compilation take 2. <a target="_blank" href="https://commits.kde.org/kdenlive/db63af6423020bd070a7dd6e097eafed8e32accc">Commit.</a></li> <li>Fix Qt5 compilation. <a target="_blank" href="https://commits.kde.org/kdenlive/0f4f14a772cd68ffb6ac4369a6e0eaf4a21d4053">Commit.</a></li> <li>Fix some Qt6 reported warnings. <a target="_blank" href="https://commits.kde.org/kdenlive/938fa1ede9ffab4018acdb94dc53281eeead4a52">Commit.</a></li> <li>Fix pasted effects not adjusted to track length. <a target="_blank" href="https://commits.kde.org/kdenlive/b8253ccab466153be57477aafaa367db59224789">Commit.</a></li> <li>Python virtual env: Add config tab in the Environement Settings page, minor fixes for the dependencies checks. <a target="_blank" href="https://commits.kde.org/kdenlive/1ffa013a7336530cb82ed88ce35811ab97b5f8d7">Commit.</a></li> <li>[Qt6] We need to link to d3d on Windows. <a target="_blank" href="https://commits.kde.org/kdenlive/42c5e4b0aabc8e60651b01b7787f0c9e0fe9a15f">Commit.</a></li> <li>Convert license headers to SPDX. <a target="_blank" href="https://commits.kde.org/kdenlive/10f72c78705db00ed22ff8cb352b60cc0380e114">Commit.</a></li> <li>Use pragma once for new monitor code. <a target="_blank" href="https://commits.kde.org/kdenlive/d701e5680508fecd263d50d34400a3bed9910942">Commit.</a></li> <li>Fix Qt6 build on Windows. <a target="_blank" href="https://commits.kde.org/kdenlive/72486f22b1b44dacf935948d1bc06b3ddb6ed0b4">Commit.</a></li> <li>Text based edit: add font zooming and option to remove all silence. <a target="_blank" href="https://commits.kde.org/kdenlive/e614e9372667af765470d532c6db9e867bad2690">Commit.</a></li> <li>Move venv to standard xdg location (.local/share/kdenlive). <a target="_blank" href="https://commits.kde.org/kdenlive/c420ba796a6b7e25bad466863d9255952142cebb">Commit.</a></li> <li>Whisper now has word timings. <a target="_blank" href="https://commits.kde.org/kdenlive/29e5e44f9eeaa78fb1e8bbe5280ad21462d0924a">Commit.</a></li> <li>Use python venv to install modules. <a target="_blank" href="https://commits.kde.org/kdenlive/b4829698b93216749c5e3aa2b74d7380973c1264">Commit.</a></li> <li>Fix timeline preview ignored in temporary data dialog. <a target="_blank" href="https://commits.kde.org/kdenlive/2f67613f07069970200264bfd168613afe410451">Commit.</a> Fixes bug <a target="_blank" href="https://bugs.kde.org/475980">#475980</a></li> <li>Improve debug output for tests. <a target="_blank" href="https://commits.kde.org/kdenlive/04884a43987604b54b0525c81269eca2dd5e010d">Commit.</a></li> <li>Correctly prefix python scripts, show warning on failure to find python. <a target="_blank" href="https://commits.kde.org/kdenlive/9cdf7cffb91b4725c2b10c5310f41dd1732f44a3">Commit.</a></li> <li>Qt6 Monitor support. <a target="_blank" href="https://commits.kde.org/kdenlive/1deb87b1ec8ec68b895848862323d1ea7874282f">Commit.</a></li> <li>Speech to text: fix whisper install aborting after 30secs. <a target="_blank" href="https://commits.kde.org/kdenlive/880ece8582f820a9d9123809a91d7b5860307bd1">Commit.</a></li> <li>Don&#8217;t try to generate proxy clips for audio with clipart. <a target="_blank" href="https://commits.kde.org/kdenlive/fdd4bf7c90d2f59f2c39d3b32d429c2512e882eb">Commit.</a></li> <li>Clip loading: switch to Mlt::Producer probe() instead of fetching frame. <a target="_blank" href="https://commits.kde.org/kdenlive/4d6f30d75356d4574151c82e2383ab836f73ecab">Commit.</a></li> <li>Multiple fixes for time remap losing keyframes. <a target="_blank" href="https://commits.kde.org/kdenlive/58774336ec38e62ff4324c7cae3a68c560d20032">Commit.</a></li> <li>[CI] Increase per test timeout. <a target="_blank" href="https://commits.kde.org/kdenlive/fd696ab9d48d23efcb5d15702f06cf9aca00a900">Commit.</a></li> <li>Add secondary color correction xml with renamed alphasp0t effect, fix effectgroup showing incorrect names. <a target="_blank" href="https://commits.kde.org/kdenlive/8fb4adb50f078f3cc8a0e9c321a65c02bd79db92">Commit.</a></li> <li>Add png with alpha render profile. <a target="_blank" href="https://commits.kde.org/kdenlive/0c96c3c19ac4a666992dcace1ab8d08b8c27dd00">Commit.</a> See issue <a target="_blank" href="https://invent.kde.org/multimedia/kdenlive/-/issues/1605">#1605</a></li> <li>Fix Mix not correctly deleted on group track move. <a target="_blank" href="https://commits.kde.org/kdenlive/efb26708b0d58a9c44e578abe71ca9d46352d4bb">Commit.</a> See issue <a target="_blank" href="https://invent.kde.org/multimedia/kdenlive/-/issues/1726">#1726</a></li> <li>Cleanup commented code. <a target="_blank" href="https://commits.kde.org/kdenlive/49ad51c3956b74ef6f0377c83a63ed43e20a1436">Commit.</a></li> <li>Fix setting default values is never executed. <a target="_blank" href="https://commits.kde.org/kdenlive/4a50355ca6c1bf70e70d6240848f1ecedce7f722">Commit.</a></li> <li>Cleanup param insert and placeholder replacement. <a target="_blank" href="https://commits.kde.org/kdenlive/7e555a72ae400b462db89e4f94ee469e1b50c799">Commit.</a></li> <li>Move render argument creation to a function. <a target="_blank" href="https://commits.kde.org/kdenlive/26e5a1e089c73f4737b5f78c305df863fd92f7c2">Commit.</a></li> <li>Move project init logic out of renderrequest. <a target="_blank" href="https://commits.kde.org/kdenlive/d42647aac2443becc126991a33b2a9b3f5005e4d">Commit.</a></li> <li>Use projectSceneList() for both cli and gui rendering. <a target="_blank" href="https://commits.kde.org/kdenlive/9ce9bb20037c2e2da2845cef2d90bee2099454be">Commit.</a></li> <li>Use active timeline for rendering. <a target="_blank" href="https://commits.kde.org/kdenlive/6fcc2df23c005bc4bd55b3cc9ccbd9da315aa852">Commit.</a></li> <li>Adapt to KBookmarkManager API change. <a target="_blank" href="https://commits.kde.org/kdenlive/7d0639629f63cf2ad678311fc91f1c539d807d72">Commit.</a></li> <li>Small cleanup. <a target="_blank" href="https://commits.kde.org/kdenlive/63332f680a9ffa5786bd1802dbfbfb5f67c9f7c4">Commit.</a></li> <li>Properly initialize projectItemModel and bin playlist on render request. <a target="_blank" href="https://commits.kde.org/kdenlive/4992d801a8336f04b002c25fd1c2b1fe792168d0">Commit.</a></li> <li>Revert &#8220;Properly initialize projectItemModel and bin playlist on render request&#8221;. <a target="_blank" href="https://commits.kde.org/kdenlive/b652532cdfdbd7d391f1c1afbe7fc8eee4f50199">Commit.</a></li> <li>Fix for renamed frei0r effects. <a target="_blank" href="https://commits.kde.org/kdenlive/eb7ef279aea3e204e4a8ca422fd56639965e5046">Commit.</a></li> <li>Fix rendering with alpha. <a target="_blank" href="https://commits.kde.org/kdenlive/4fc57544d44f22e30d2b9bbe4c918c895040ac74">Commit.</a></li> <li>Rotoscoping: don&#8217;t auto add a second kfr at cursor pos when creating the initial shape, don&#8217;t auto add keyframes until there are 2 keyframes created. <a target="_blank" href="https://commits.kde.org/kdenlive/c996ae258fe8e5d1718e208144688376b9ec9e9e">Commit.</a></li> <li>Fix description &#8211;render-async flag. <a target="_blank" href="https://commits.kde.org/kdenlive/df372375671e31f9a13fb82009dbf7c5e1f7fee7">Commit.</a></li> <li>Fix keyframe param not correctly enabled when selecting a clip. <a target="_blank" href="https://commits.kde.org/kdenlive/8916d5e7190c98e3872610ca5f971dd84ed98ba8">Commit.</a></li> <li>Fix smooth keyframe path sometimes incorrectly drawn on monitor. <a target="_blank" href="https://commits.kde.org/kdenlive/120af1da376572a665ff5c280ddd41386192f2fa">Commit.</a></li> <li>Allow setting the default interpolation method for scaling operations on rendering. <a target="_blank" href="https://commits.kde.org/kdenlive/18c7d093076d640571bd546edf5c130a889c96a5">Commit.</a> Fixes issue <a target="_blank" href="https://invent.kde.org/multimedia/kdenlive/-/issues/1766">#1766</a></li> <li>Don&#8217;t attempt to replace clip resource if proxy job was not completely finished. <a target="_blank" href="https://commits.kde.org/kdenlive/bc3cddc34f4f29a62f4c7185d560eaf5d1b1c14f">Commit.</a> Fixes issue <a target="_blank" href="https://invent.kde.org/multimedia/kdenlive/-/issues/1768">#1768</a></li> <li>Properly initialize projectItemModel and bin playlist on render request. <a target="_blank" href="https://commits.kde.org/kdenlive/ad7adf20cd46bb00dfc6d5f0ae0ad959d0f36227">Commit.</a></li> <li>Rename render params, don&#8217;t load project twice. <a target="_blank" href="https://commits.kde.org/kdenlive/72ba33eda7cc208d52f89a9c49e99209a1823d94">Commit.</a></li> <li>Remove accelerator on timeline tab rename. <a target="_blank" href="https://commits.kde.org/kdenlive/6e53898cf7dd6896fd3e6ac89546cedb0b9dbb75">Commit.</a> Fixes issue <a target="_blank" href="https://invent.kde.org/multimedia/kdenlive/-/issues/1769">#1769</a></li> <li>Print render errors for cli rendering too. <a target="_blank" href="https://commits.kde.org/kdenlive/9a97bbf63072a0f8b6c2f80ece145b011e0a3a09">Commit.</a></li> <li>Minor cleanup. <a target="_blank" href="https://commits.kde.org/kdenlive/21e262c52cd0e54e9cee9af4a673bd7dad63580e">Commit.</a></li> <li>Improve exit code on failure. <a target="_blank" href="https://commits.kde.org/kdenlive/b6b6d95d6b103ffbc2ebb1386fb6502e128f235b">Commit.</a></li> <li>[cli rendering] Fix condition for subtitle. <a target="_blank" href="https://commits.kde.org/kdenlive/78354810626a5aaf777e2907becee52bd2587658">Commit.</a></li> <li>Show documentchecker warning only if relevant. <a target="_blank" href="https://commits.kde.org/kdenlive/24117d081f8b7b676cc0cb1c3f3cd3708282bcf0">Commit.</a></li> <li>Fix printing of documentchecker results. <a target="_blank" href="https://commits.kde.org/kdenlive/0229d074c1ba59ec9232e4eb0d8fa63ab9b8f13d">Commit.</a></li> <li>[cli renderer] Ensure x265 params are calculated. <a target="_blank" href="https://commits.kde.org/kdenlive/dbf6e6cb209a6298465c7e8d815f71ff75bb5a03">Commit.</a></li> <li>Custom clip job: allow using current clip&#8217;s frame as parameter. <a target="_blank" href="https://commits.kde.org/kdenlive/f4b7d4007a336489accdfbaa57387f2db1726fb4">Commit.</a></li> <li>Properly adjust timeline clips on sequence resize. <a target="_blank" href="https://commits.kde.org/kdenlive/ff09e054d4fa82207d1c0bd0226fc54adf8cbbcb">Commit.</a></li> <li>Remove unused debug stuff. <a target="_blank" href="https://commits.kde.org/kdenlive/f3e7bef9e1a0beed7af7c1a64d76418414c83784">Commit.</a></li> <li>Fix project duration not correctly updated on hide / show track. <a target="_blank" href="https://commits.kde.org/kdenlive/8de56f0cd508e73cc584e2296a39652b775f8dfe">Commit.</a></li> <li>Custom clip jobs: handle lut file as task output. <a target="_blank" href="https://commits.kde.org/kdenlive/d28f735d8c60553d6085ca296ecf1b5d5c0bab24">Commit.</a></li> <li>Allow renaming a timeline sequence by double clicking on its tab name. <a target="_blank" href="https://commits.kde.org/kdenlive/0c65b5ed51d82552fd6e27f03539d44d3eb8d45c">Commit.</a></li> <li>Fix resize clip with mix test. <a target="_blank" href="https://commits.kde.org/kdenlive/202cfc5b4feb66370d2907191c04d7e9dcb32840">Commit.</a></li> <li>Fix resize clip start to frame 0 of timeline not correctly working in some zoom levels,. <a target="_blank" href="https://commits.kde.org/kdenlive/22b93bbb67f68a9dc7609a3ea7a6783ad137da95">Commit.</a></li> <li>Remember Clip Monitor audio thumbnail zoom &amp; position for each clip. <a target="_blank" href="https://commits.kde.org/kdenlive/65278b82ecf8fb46acbdb918c1b9bd309dec6976">Commit.</a></li> <li>Asset List: ensure favorite are shown using a bold font. <a target="_blank" href="https://commits.kde.org/kdenlive/b93226c379e3fe999a045c95812176be2e77c1bc">Commit.</a></li> <li>Fix asset list using too much height. <a target="_blank" href="https://commits.kde.org/kdenlive/5161c4781735d39f6bd1efd3eb539dc4504f08ca">Commit.</a></li> <li>Switch Effects/Compositions list to QWidget. <a target="_blank" href="https://commits.kde.org/kdenlive/93e309673f48a46faaec3b8329ccbf3a1d8ff2e9">Commit.</a></li> <li>Drop unused and deprecated qmlmodule QtGraphicalEffects. <a target="_blank" href="https://commits.kde.org/kdenlive/5f22ffea0c6a3a19dd957482f47dc378357bfd5a">Commit.</a></li> <li>Fix warning. <a target="_blank" href="https://commits.kde.org/kdenlive/c15951080cb0ecc2676114d6156ccdb88a4f6f14">Commit.</a></li> <li>Fix multiple audio streams broken by MLT&#8217;s new astream property. <a target="_blank" href="https://commits.kde.org/kdenlive/f76e24a0b00b441a87466943ce6a3b318574510e">Commit.</a> Fixes bug <a target="_blank" href="https://bugs.kde.org/474895">#474895</a></li> <li>Custom clip jobs: ensure we never use the same output name if several tasks are started on the same job. <a target="_blank" href="https://commits.kde.org/kdenlive/99d1d6d8bf28821336750a288b063ec77ea49064">Commit.</a></li> <li>Custom clip jobs: ensure script exists and is executable. <a target="_blank" href="https://commits.kde.org/kdenlive/689528dc78b57d37452a6593306ea5e9d78fe70b">Commit.</a></li> <li>Fix dialogs not correctly deleted, e.g. add track dialog, causing crash on exit. <a target="_blank" href="https://commits.kde.org/kdenlive/b400387383c47c370a322d7c4215d3b90eb41515">Commit.</a></li> <li>Ensure clips with audio (for exemple playlists) don&#8217;t block audio when inserted on video track. <a target="_blank" href="https://commits.kde.org/kdenlive/ccc30ebc3f9498d2fd88a6603684a79957371e11">Commit.</a></li> <li>Ensure translations cannot mess with file extensions. <a target="_blank" href="https://commits.kde.org/kdenlive/2b90c747ef47e3a97f0924ad9f1d59c00f0d5948">Commit.</a></li> <li>Fix another case blocking separate track move. <a target="_blank" href="https://commits.kde.org/kdenlive/54ed2e8acfe85d035efab1585afcce9f666f308a">Commit.</a></li> <li>Fix grabbed clips cannot be moved on upper track in some cases. <a target="_blank" href="https://commits.kde.org/kdenlive/53d05995936053a9fd679b47d0cbe2e4063831f3">Commit.</a></li> <li>Final blocks for enabling render test suite: add synchronous option to exit only after rendering is finished, add option for render preset (use H264 as default). <a target="_blank" href="https://commits.kde.org/kdenlive/559a2bfddaacc684592ff24e672dda8a2cb2f413">Commit.</a></li> <li>Implement #1730 replace audio or video of a bin clip in timeline. <a target="_blank" href="https://commits.kde.org/kdenlive/1f288e3dfcc04aa194221261d658e2d54c6c953a">Commit.</a></li> <li>Fix cppwarning. <a target="_blank" href="https://commits.kde.org/kdenlive/c119db4499b10bfb1676a8dcd7a11dc5f6f74dd3">Commit.</a></li> <li>Fix move clip part of a group on another track not always working. <a target="_blank" href="https://commits.kde.org/kdenlive/4e417b843fc9338fdabd83cbc1edcfd76950f70d">Commit.</a></li> <li>Fix playlist count not correctly updated, allowing to delete last sequence. <a target="_blank" href="https://commits.kde.org/kdenlive/75ee756eaf9482b4d1b645d4f5eb1ccd77b7150e">Commit.</a> Fixes bug <a target="_blank" href="https://bugs.kde.org/474988">#474988</a></li> <li>Fix motion-tracker Nano file name and links to the documentation. <a target="_blank" href="https://commits.kde.org/kdenlive/55f418c136886f40e24a1545fa72a366715b3681">Commit.</a></li> <li>Stop installing kdenliveui.rc also as separate file, next to Qt resource. <a target="_blank" href="https://commits.kde.org/kdenlive/32233b801475a3c311cba0c3242d9cc72c78e552">Commit.</a></li> <li>Library: add action to open a library file in a File manager. <a target="_blank" href="https://commits.kde.org/kdenlive/087a6a5a5a1519eb50b7f69c263ba1e78f51c5c5">Commit.</a></li> <li>Fix tests and possible corruption in recent mix fix. <a target="_blank" href="https://commits.kde.org/kdenlive/fb29033a3d68eca5b1b7215197ce98b810d65715">Commit.</a></li> <li>Correctly highlight newly dropped files in library. <a target="_blank" href="https://commits.kde.org/kdenlive/8a928e66485052ae15b1888840642fab84a840d1">Commit.</a></li> <li>Fix threading issue crashing in resource widget. <a target="_blank" href="https://commits.kde.org/kdenlive/6bee09f9cad7c20881213d7990d9e0c7e001af2c">Commit.</a> Fixes issue <a target="_blank" href="https://invent.kde.org/multimedia/kdenlive/-/issues/1612">#1612</a></li> <li>Fix freeze on adding mix. <a target="_blank" href="https://commits.kde.org/kdenlive/eb56bb12cfc9c4f05c4fb8971b498456de8c851e">Commit.</a> See issue <a target="_blank" href="https://invent.kde.org/multimedia/kdenlive/-/issues/1751">#1751</a></li> <li>Make Lift work as expected by most users. <a target="_blank" href="https://commits.kde.org/kdenlive/cda16f42b0e6991e368cf39b144d10a6cc10432f">Commit.</a> Fixes bug <a target="_blank" href="https://bugs.kde.org/447948">#447948</a>. Fixes bug <a target="_blank" href="https://bugs.kde.org/436762">#436762</a></li> <li>Fix load task discarding kdenlive settings (caused timeline clips to miss the &#8220;proxy&#8221; icon. <a target="_blank" href="https://commits.kde.org/kdenlive/5a7d0b330069e144ab3c238b3f562440d08f3103">Commit.</a></li> <li>Fix multiple issues with Lift/Gamma/Gain undo. <a target="_blank" href="https://commits.kde.org/kdenlive/48515473d3d2d3b193dee7342585be9ae13fee66">Commit.</a> Fixes bug <a target="_blank" href="https://bugs.kde.org/472865">#472865</a>. Fixes bug <a target="_blank" href="https://bugs.kde.org/462406">#462406</a></li> <li>Fix freeze / crash on project opening. <a target="_blank" href="https://commits.kde.org/kdenlive/37dfd6f233ea409afd7bddb68e129824fd11f632">Commit.</a></li> <li>COrrectly update effect stack when switching timeline tab. <a target="_blank" href="https://commits.kde.org/kdenlive/778cb0a6d2b343a8c8c62f0dbb1f545c737cfda7">Commit.</a></li> <li>Drop timeline guides, in favor of sequence clip markers. <a target="_blank" href="https://commits.kde.org/kdenlive/276b75e320e965ceed128618d244bae328070c5d">Commit.</a></li> <li>Optimize RAM usage by not storing producers on which we did a get_frame operation. <a target="_blank" href="https://commits.kde.org/kdenlive/d479d8819f8ce97d437ee076d0abd951c3cd4180">Commit.</a></li> <li>Fix guide multi-export adding an extra dot to the filename. <a target="_blank" href="https://commits.kde.org/kdenlive/67768c4b58ff514af47d69b8150015b333e45c1d">Commit.</a></li> <li>Open the recursive search from the project file location. <a target="_blank" href="https://commits.kde.org/kdenlive/a7ec7e45b5dc8e73563c6776a2e200d6956f5c82">Commit.</a></li> <li>Inform user about time spent on recursive search. <a target="_blank" href="https://commits.kde.org/kdenlive/59fdf99866b144b0680934fc965cfdc1d23c1f38">Commit.</a></li> <li>Allow open contained folder in job queue dialog. <a target="_blank" href="https://commits.kde.org/kdenlive/9c0791f2c8428316890af73481e1ee82ac1577e4">Commit.</a></li> <li>Read input and output from command line. <a target="_blank" href="https://commits.kde.org/kdenlive/af7afdd3fff0cbfce4a3bf8b48e68dcab476058f">Commit.</a></li> <li>Correctly process configurable render params. <a target="_blank" href="https://commits.kde.org/kdenlive/71b907e8243d2638cbb2e958633c5c864e58fa99">Commit.</a></li> <li>Fix crash on subclip transcoding. <a target="_blank" href="https://commits.kde.org/kdenlive/919417f882026f56ea409b3c1b84819383d4da97">Commit.</a> Fixes issue <a target="_blank" href="https://invent.kde.org/multimedia/kdenlive/-/issues/1753">#1753</a></li> <li>Fix audio extract for multi stream clips. <a target="_blank" href="https://commits.kde.org/kdenlive/71bc55787f51df687042f4859fd58f1e37c6f568">Commit.</a></li> <li>Correctly set render params for headless rendering. <a target="_blank" href="https://commits.kde.org/kdenlive/743aa18107386fdb4fa2feddcfddf6d4a42ea5f4">Commit.</a></li> <li>Ensure some basic parts are built with headless rendering. <a target="_blank" href="https://commits.kde.org/kdenlive/1011df4ebb1ffe5cf51d25e396258ed8ff51bcf4">Commit.</a></li> <li>Remove unneeded setting of CMake policies, implied by requiring 3.16. <a target="_blank" href="https://commits.kde.org/kdenlive/90bbc12eddf0a32e8d68bc9b3ac212e7247db184">Commit.</a></li> <li>Fix detection/fixing when several clips in the project use the same file. <a target="_blank" href="https://commits.kde.org/kdenlive/7eacf89ae40b9ed96a91a8808e4f8e07570a37b7">Commit.</a></li> <li>Render widget: show warning if there is a missing clip in the project. <a target="_blank" href="https://commits.kde.org/kdenlive/7d71b025a8ee6ea7e2b6509635f48a9c6fbc007f">Commit.</a></li> <li>DocumentChecker: Enable recursive search for clips with proxy but missing source. <a target="_blank" href="https://commits.kde.org/kdenlive/be69ed97e56678e72f5251d2fd99425422c9df0a">Commit.</a></li> <li>Fix rnnoise effect parameters and category. <a target="_blank" href="https://commits.kde.org/kdenlive/0862c19021edfa0ce7dc5b43a3a27b02a9f4ccfe">Commit.</a></li> <li>Fix minor typo. <a target="_blank" href="https://commits.kde.org/kdenlive/fe30d719fc570443cff3d1177d6a9050e2aa0e42">Commit.</a></li> <li>Fix zone rendering not remembered when reopening a project. <a target="_blank" href="https://commits.kde.org/kdenlive/3bb2f08efcbd16048133f6aa2686d9b13702e2be">Commit.</a></li> <li>Add missing test file. <a target="_blank" href="https://commits.kde.org/kdenlive/ae714fb9e5fd094d86f1d09150871545fd0fe929">Commit.</a></li> <li>Various document checker fixes: fix display update on status change, allow sorting in dialog, hide recreate proxies if source is not available, add test for missing proxy. <a target="_blank" href="https://commits.kde.org/kdenlive/0568517de4b011cdde36ed173daef8191e89ec71">Commit.</a></li> <li>Project Bin: don&#8217;t draw icon frame if icon size is null. <a target="_blank" href="https://commits.kde.org/kdenlive/d94257c8ac2a8752049acc88dd84097816aa1d95">Commit.</a></li> <li>Fix clips with empty resource not detected by our documentchecker code. <a target="_blank" href="https://commits.kde.org/kdenlive/048053bbaac56ca2df92d476f73e49380d50b53b">Commit.</a></li> <li>Fix document checker dialog not enabling ok after removing problematic clips. <a target="_blank" href="https://commits.kde.org/kdenlive/4c34abc4270692a5a5770d5ba3771e5ad3fa7e27">Commit.</a></li> <li>Document checker dialog: fix selection, allow multiple selection, limit color background and striked out text to a specific column. <a target="_blank" href="https://commits.kde.org/kdenlive/f341e55c4a39599b8758d54f51dd1b73965bcd48">Commit.</a></li> <li>Show fade value on drag. <a target="_blank" href="https://commits.kde.org/kdenlive/d7d86c98b5579dca3ec7c16abf26dd2ee5fe4b53">Commit.</a> Fixes issue <a target="_blank" href="https://invent.kde.org/multimedia/kdenlive/-/issues/1744">#1744</a></li> <li>If copying an archived file fails, show which file failed in user message. <a target="_blank" href="https://commits.kde.org/kdenlive/985b129c7beb3ffa123366b21a06e5079ca66101">Commit.</a></li> <li>Don&#8217;t incorrectly treat disabled proxy (-) as missing. <a target="_blank" href="https://commits.kde.org/kdenlive/8af3465391e265125d9daa4382ce59a43ef9a601">Commit.</a> Fixes issue <a target="_blank" href="https://invent.kde.org/multimedia/kdenlive/-/issues/1748">#1748</a></li> <li>Fix minor typo. <a target="_blank" href="https://commits.kde.org/kdenlive/0d6ce68c888e134e5262a349092bf26f1e0767c6">Commit.</a></li> <li>Fix box_blur xml. <a target="_blank" href="https://commits.kde.org/kdenlive/c91a8cd32ab5085cc86702139a2440cb5a3b98f9">Commit.</a></li> <li>Add new &#8220;preserve alpha&#8221; option to box blur. <a target="_blank" href="https://commits.kde.org/kdenlive/84ede0df7a2c0064423cd7b2ace8dc61d1eb3fc0">Commit.</a></li> <li>Transcoding: add option to replace clip in project (disabled for timeline sequence clips). <a target="_blank" href="https://commits.kde.org/kdenlive/cd699619fb329b27fe29b75aecdf19db8572cd60">Commit.</a> See issue <a target="_blank" href="https://invent.kde.org/multimedia/kdenlive/-/issues/1747">#1747</a></li> <li>Add notr=&#8221;true&#8221; for text that should not be translated. <a target="_blank" href="https://commits.kde.org/kdenlive/edb2c9a7334d5471f68114ec98241a4eb787642a">Commit.</a></li> <li>When an MLT playlist proxy is missing, it should be reverted to a producer, not stay in a chain. <a target="_blank" href="https://commits.kde.org/kdenlive/0f973fdb6a37d8d3dbbf208e6995e86a84ff77be">Commit.</a></li> <li>Adapt to kbookmarks API change. <a target="_blank" href="https://commits.kde.org/kdenlive/e7b9a18dc66db74c9c9f7397d742bbf11aaac43e">Commit.</a></li> <li>Adapt to KNotifcations API change. <a target="_blank" href="https://commits.kde.org/kdenlive/3490ed6292778ef50360fb149c3e9bd39ab8b600">Commit.</a></li> <li>Try to auto fix path of LUT files on project opening. <a target="_blank" href="https://commits.kde.org/kdenlive/fb6d2c52884356798b4739d0e4696a1bd0e0072c">Commit.</a></li> <li>Automatically fix missing fonts (like before). <a target="_blank" href="https://commits.kde.org/kdenlive/e7366c2959c47ba39115901b3fa0d9133bafa622">Commit.</a></li> <li>Remove unused ManageCapturesDialog. <a target="_blank" href="https://commits.kde.org/kdenlive/a0714430caa4ee4460bf717662f9e2876c29fedb">Commit.</a></li> <li>[DCResolverDialog] Improve UI. <a target="_blank" href="https://commits.kde.org/kdenlive/a8225ad9a773c3ee572b5305032cc2b8b93313c9">Commit.</a></li> <li>Fix recursive search and &#8220;use placeholder&#8221;. <a target="_blank" href="https://commits.kde.org/kdenlive/61031df6c65cf2e22388596e973d7e8acd46d3be">Commit.</a></li> <li>[REUSE] Remove duplicated entry in dep5. <a target="_blank" href="https://commits.kde.org/kdenlive/9e43257dd9cfb97f347760a8dd82f584fe469261">Commit.</a></li> <li>Chore(REUSE): Further linting. <a target="_blank" href="https://commits.kde.org/kdenlive/78f287ec54a3042ec01ce12d87a423beb566db46">Commit.</a></li> <li>Chore(REUSE): Add headers in data/effects/update. <a target="_blank" href="https://commits.kde.org/kdenlive/0e5e5882fca242295d97d678747c216e12e368af">Commit.</a></li> <li>Chore(REUSE): Add headers in src/ui. <a target="_blank" href="https://commits.kde.org/kdenlive/82ac1a06ca3fe2663e6ee01e1d5c0b564836f700">Commit.</a></li> <li>Chore(REUSE): Add missing licence texts. <a target="_blank" href="https://commits.kde.org/kdenlive/e97618d924fc69dccbc18ab74dd73953754307ef">Commit.</a></li> <li>Chore(reuse): Add missing IP info. <a target="_blank" href="https://commits.kde.org/kdenlive/b67c83e476327b96a34889a1dfeb8935e33a4805">Commit.</a></li> <li>Chore(REUSE): Add SPDX info to CMakelists.txt files. <a target="_blank" href="https://commits.kde.org/kdenlive/445f56256c7452fa8c146a1e8cf5638dfcf1eba3">Commit.</a></li> <li>Add missing include (fix qt6 build). <a target="_blank" href="https://commits.kde.org/kdenlive/ac2b96c0f43eeec0376f6ce8e251109701df0136">Commit.</a></li> <li>Don&#8217;t duplicate KF_DEP_VERSION + remove unused REQUIRED_QT_VERSION. <a target="_blank" href="https://commits.kde.org/kdenlive/735be9253ad25a5e916989c7f4c00f54aa465b52">Commit.</a></li> <li>Fix configure qt6. <a target="_blank" href="https://commits.kde.org/kdenlive/cdf161dd6b18cd9ca608d95ec371d5f58383e506">Commit.</a></li> <li>[ColorWheel] Show real color in slider instead of black and white. <a target="_blank" href="https://commits.kde.org/kdenlive/66fa5c300e7f93922331ce863b110c069cb6faec">Commit.</a> See issue <a target="_blank" href="https://invent.kde.org/multimedia/kdenlive/-/issues/1405">#1405</a></li> <li>Add QColorUtils::complementary. <a target="_blank" href="https://commits.kde.org/kdenlive/6bdf0a628dbe8ee4ffcba25fe5588050f320372d">Commit.</a></li> <li>Add some accessibility names for testing. <a target="_blank" href="https://commits.kde.org/kdenlive/33c9850b40a39c83ab2813e125a25925c75ab492">Commit.</a></li> <li>Add option to export guides as FFmpeg chapter file. <a target="_blank" href="https://commits.kde.org/kdenlive/20107347fcbb25ecfc3eeee8e372bc28b6d1220d">Commit.</a> See bug <a target="_blank" href="https://bugs.kde.org/451936">#451936</a></li> <li>[Rendering] Further restructuring. <a target="_blank" href="https://commits.kde.org/kdenlive/f3aee46d69177c45eb9fa6b8868e9eb3b728607a">Commit.</a></li> <li>[DocumentResource] Fix workflow with proxies. <a target="_blank" href="https://commits.kde.org/kdenlive/53d919dd40cb2966cd934baf57b1eb6f3fef9995">Commit.</a></li> <li>Try to fix tests. <a target="_blank" href="https://commits.kde.org/kdenlive/30ee10edaed8f19a2672f5aad070a0d79492c5c1">Commit.</a></li> <li>[DocumentChecker] Fix and polish after refactoring. <a target="_blank" href="https://commits.kde.org/kdenlive/70eaed57cc55095aa82b89e27f33bb37b09db5aa">Commit.</a></li> <li>[DocumentChecker] Refactor code to split logic and UI. <a target="_blank" href="https://commits.kde.org/kdenlive/17b5f18a02f4a15cdb24a498c0a1fb2c742ec7f2">Commit.</a></li> <li>[DocumentChecker] Start to split UI and backend code. <a target="_blank" href="https://commits.kde.org/kdenlive/c80413a9e7058837b626772401ae5548ddea87f9">Commit.</a></li> <li>Add our mastodon on apps.kde.org. <a target="_blank" href="https://commits.kde.org/kdenlive/e2d2c8e08d1d635756cfa03ea0de8b725726ee2f">Commit.</a></li> <li>Fix typo not installing renderer. <a target="_blank" href="https://commits.kde.org/kdenlive/037f58c76fcada37b0242ebf05a425b08ce53e17">Commit.</a></li> <li>Fix tests. <a target="_blank" href="https://commits.kde.org/kdenlive/8c4eea726654f0eb74b015e7c3f1f44115a3d99b">Commit.</a></li> <li>Delete unused var. <a target="_blank" href="https://commits.kde.org/kdenlive/a44ac3a048a162917c4c68777d30bdf41ad92dbc">Commit.</a></li> <li>Initial (yet hacky) cli rendering. <a target="_blank" href="https://commits.kde.org/kdenlive/a23b46ee135c1786c26b49f0a737fd4e29302bed">Commit.</a></li> </ul></div> </div> </div> </div> </div></p> <p>The post <a target="_blank" href="https://kdenlive.org/en/2024/03/kdenlive-24-02-0-released/">Kdenlive 24.02.0 released</a> appeared first on <a target="_blank" href="https://kdenlive.org/en">Kdenlive</a>.</p>KdenliveActivity-aware Firefox 0.4.2 & packages for Debian and Archhttps://matija.suklje.name/activity-aware-firefox-042-packages-for-debian-and-archSun, 10 Mar 2024 23:00:00 +0000tag:matija.suklje.name,2024-03-11:/activity-aware-firefox-042-packages-for-debian-and-arch<p>If you have not been following this blog series, I made a <em><a target="_blank" href="https://matija.suklje.name/introducing-activity-aware-firefox">wrapper for Firefox</a> to be able to run different tabs (and more) in different KDE Plasma Activities</em>.</p> <p>Often a hurdle to using a piece of software is that it is not packaged for Linux distros.</p> <p>Kudos to <em>Aurélien Couderc (coucouf)</em>, who packaged already <a target="_blank" href="https://packages.debian.org/bookworm/activity-aware-firefox">0.4.1 for <strong>Debian</strong></a> and provided the patch to make it easier to package to different distros.</p> <p>With <a target="_blank" href="https://gitlab.com/hook/activity-aware-firefox/-/releases/v0.4.2">0.4.2 version</a> of <em><a target="_blank" href="https://gitlab.com/hook/activity-aware-firefox">Activity-aware Firefox</a></em> we applied that patch. Other then that, the functionality remains the same as in 0.4.1.</p> <p>Then I also wrote an <a target="_blank" href="https://aur.archlinux.org/packages/activity-aware-firefox"><abbr title="Arch Linux User Repository">AUR</abbr> package</a>, so <strong>Arch</strong>, EndeavourOS etc. should be covered now too.</p> <p>As a consequence, <a target="_blank" href="https://repology.org/project/activity-aware-firefox/packages">Repology now lists 12 distro packages</a> for Activity-aware Firefox – that is a great start!</p> <p>But while large, Debian- and Arch-based distros are just a subset of all available <abbr title="Free &amp; Open Source Software">FOSS</abbr> operating systems that KDE Plasma and Firefox run on. If <strong>someone were to put it on <a target="_blank" href="https://openbuildservice.org/">Open Build Service</a></strong> to cover also <abbr title="RPM Package Manager">RPM</abbr>-based and other distros, that would be a great boon!</p> <p>Contributions welcome, as I am reaching the limit of my skills here.</p> <p><em>hook out → server migration successful – more on that some other day</em></p>Matija ŠukljeHow YOU Help With Qualityhttps://pointieststick.com/2024/03/09/how-you-help-with-quality/Sat, 09 Mar 2024 21:53:06 +0000http://pointieststick.com/?p=19281<p>In <a target="_blank" href="https://pointieststick.com/2024/03/08/this-week-in-kde-a-deluge-of-new-features/">today&#8217;s other blog post</a>, I mentioned how we&#8217;ve been getting a huge number of bug reports since the Mega-Release. If you&#8217;re not in software engineering, this probably seems like a bad thing. &#8220;Oh no, why so many bugs? Didn&#8217;t you test your software properly!?&#8221;</p> <p>Since most people are not involved in software engineering, this perspective is common and understandable. So I&#8217;d like to shed a light on the assumptions behind it, and talk about the challenges involved in improving software quality, which is a passion of mine.</p> <h2 class="wp-block-heading">Don&#8217;t kill the messenger</h2> <p>See, bug reports are a &#8220;don&#8217;t kill the messenger&#8221; type of thing. Bugs are there whether they get reported or not, and getting them reported is important so you have a more accurate picture of how your software is actually being used by real people in the real world.</p> <p>In our KDE world, the alternative to &#8220;lots of bug reports&#8221; isn&#8217;t &#8220;few bug reports because there are few bugs&#8221; but rather &#8220;few bug reports because the software isn&#8217;t actually being used much so no one is finding the bugs.&#8221; What matters more is the severity of the actionable bug reports.</p> <h2 class="wp-block-heading">What bug-free software looks like</h2> <p>That sounds so defeatist! Surely it must actually be possible to have bug-free software, right?</p> <p>Yes. But to achieve it, you have to test literally every possible thing the software can do to make sure it performs correctly in the environment in which it&#8217;s doing it. If the software can do infinite things in infinite environments, then testing also becomes infinite and therefore impossible, so combinations get missed and bugs sneak through. Bug-free software must aggressively limit the scope and variety of those environments to just the ones that can be tested. What does that look like in practice?</p> <ul> <li>Limit what the software can do in the first place. Remove as many features, options, and settings as possible without compromising the product&#8217;s necessary core functionality.</li> <li>Limit how the user can modify and extend the software after release. No user-created themes, widgets, scripts&#8211;nothing! Every modification to what the software can do or how it looks must go through a the same QA team that QAd the software in its original state. 1st-party modifications only.</li> <li>Limit the versions of upstream 3rd-party libraries, dependencies, and kernels that the software is allowed to use. Lock those versions and test everything the software can do on those specific versions.</li> <li>Limit how downstream 3rd-party user-facing software (i.e. apps) can interface with the system. Lock it down in a sandbox as much as you can so any misbehavior can&#8217;t affect the rest of the system.</li> <li>Limit the hardware that the software stack is allowed to run on. Test everything the software can do only on that hardware.</li> </ul> <p>Does this sound very much like how KDE software is developed, distributed, and used? I&#8217;d say it&#8217;s more like how Apple builds products (and note that Apple products still have bugs, but I digress)! By contrast: KDE develops lots of features and options; we&#8217;re liberal with supported library, dependency, and kernel versions; and we don&#8217;t prevent you from installing our software on any random device you can get your hands on.</p> <p>You can see the challenge right away! The foundation of quality is a set of restrictions that we don&#8217;t want to impose on ourselves and our users. You folks reading this probably don&#8217;t want us to impose them on you, either.</p> <h2 class="wp-block-heading">Quality from chaos</h2> <p>So is it just impossible to ensure quality in a permissive environment? No, but it&#8217;s harder. That&#8217;s right: we in the KDE free software world set for ourselves a fundamentally more difficult task than the big corporations with their billions of dollars of resources. Given this, I think we&#8217;ve done a pretty darn impressive job with <a target="_blank" href="https://kde.org/announcements/megarelease/6/">the Mega-Release</a>. And judging by <a target="_blank" href="https://www.youtube.com/watch?v=mtaQroi75M0">initial</a> <a target="_blank" href="https://youtu.be/h_9o8RBMsnA?si=X9r2Y4XwG6kp_Mfe&amp;t=731">impressions</a> <a target="_blank" href="https://www.zdnet.com/article/kde-neon-shows-that-the-plasma-6-linux-distro-is-something-truly-special/">out there</a>, it seems like many others agree too!</p> <p>So how did we do it?</p> <p><strong>We lengthened our beta period to 3 months and relied on bug reports from people using the software in their own personal environments.</strong></p> <p>Yes you, loyal reader! We wanted to hear how our software was working on your 12-year-old Netbook. We wanted to hear how it worked when plugged into two TVs and a rotated monitor, all through a KVM switch. We wanted to hear how it coped with the most bizarre-looking 3rd-party themes. By using our flexible and non-limited software in your diverse ways on your diverse hardware, you&#8217;re testing it and finding all the bugs that we lack the resources to find ourselves.</p> <p>Does this sort of QA work sound like something you don&#8217;t want to do? That&#8217;s 100% fine. But then you need for someone else to be the QA team for you. There are two options:</p> <ul> <li>Buy a computer with KDE software pre-installed; <a target="_blank" href="https://kde.org/hardware/">there are a lot of them now</a>! Then it&#8217;s the vendor&#8217;s responsibility to have done adequate QA on their own products. Is it buggy anyway? Complain to them or find a better vendor!</li> <li>If you&#8217;re going to install it yourself, limit yourself to common hardware, default software settings, and operating systems that are relatively conservative in their update schedules. Then the QA has been provided by others who who already used your exact setup and reported all the bugs affecting it.</li> </ul> <h2 class="wp-block-heading">Become a superhero</h2> <p>But what if you <em>do</em> want to help out with making the software better for others, but you&#8217;re not a programmer? Congratulations, you&#8217;re a real-life superhero.</p> <p>We&#8217;ve already talked about reporting bugs. It&#8217;s also important to do a good job with your bug reports so they&#8217;re actionable! I&#8217;ll encourage folks to read through <a target="_blank" href="https://community.kde.org/Get_Involved/Issue_Reporting">our documentation about this</a>. Low-quality bug reports don&#8217;t just waste our time, they waste yours as well!</p> <p>But where do all those <a target="_blank" href="https://pointieststick.com/2024/03/08/this-week-in-kde-a-deluge-of-new-features/">150-200 bug reports per day that I mentioned</a> actually go? There&#8217;s a flip side which is that someone needs to do something with every single one of them. The more bug reports we get (which, again, is good!) the more we need people to help <a target="_blank" href="https://community.kde.org/index.php?title=Guidelines_and_HOWTOs/Bug_triaging">triaging them</a>.</p> <p>Because the truth is, most bug reports don&#8217;t begin life being actionable for developers. They may be missing key information; they may be mistaking a feature for a bug; they may be describing an issue in someone else&#8217;s software; they may be about an issue that was already fixed in a version of the software that the reporter doesn&#8217;t have; they may be describing a real issue but in an unclear and confusing way; and so on.</p> <p>The job of bug triagers is to <a target="_blank" href="https://community.kde.org/index.php?title=Guidelines_and_HOWTOs/Bug_triaging">make each of these bug reports actionable</a>. Ask for missing information! Move them to the right products! Set the version and severity appropriately! Mark already reported bugs as duplicates of the existing report! Mark obvious upstream or downstream issues accordingly and direct people to the places where they can report the bugs to the responsible developers! Try to reproduce the issue yourself and mark it as confirmed if you can! And so on. It isn&#8217;t terribly glamorous work, so there aren&#8217;t very many people lining up to be volunteer bug triagers, unlike developers. But it&#8217;s very important. And so every person who helps out adds resources to what&#8217;s currently a very small team, making a massive difference in the process.</p> <p>If you&#8217;ve been looking for a way to help out KDE in a way that doesn&#8217;t require programming or a consistent time commitment, this is it. Triage a few bugs here, a few bugs there. Chip in when you can. If 30 people each triaged three bugs a day (this would take under 10 minutes, on average), we&#8217;d be in an amazing position.</p> <p>So <a target="_blank" href="https://community.kde.org/index.php?title=Guidelines_and_HOWTOs/Bug_triaging">get started today</a>! I&#8217;m available to help in the <a target="_blank" href="https://matrix.to/#/#kde-bugs:kde.org"><code>#kde-bugs</code> Matrix room</a>.</p> <p>Still don&#8217;t wanna? <a target="_blank" href="https://kde.org/community/donations/">Donate to KDE e.V.</a> so we can eventually hire our own professional bug triage and QA team!</p>Nate GrahamWorking Build With KDE Frameworks 6https://tellico-project.org/working-build-with-kde-frameworks-6/Sat, 09 Mar 2024 21:26:21 +0000https://tellico-project.org/?p=465<p>With KDE&#8217;s <a target="_blank" href="https://kde.org/announcements/megarelease/6/">Frameworks 6 being released recently</a>, I&#8217;ve been working on getting Tellico to compile with it. It didn&#8217;t actually take too much work since I&#8217;ve been gradually porting away from any deprecated functions in Qt5.</p> <p>There&#8217;s plenty to do to make sure everything is fully functional and has the correct appearance. But I&#8217;m hopeful to have a release soon. At the moment, the master branch compiles with either KF5/Qt5 or KF6/Qt6.</p> <p><img fetchpriority="high" decoding="async" src="https://tellico-project.org/wp-content/uploads/tellico_kf6-300x263.png" alt="Tellico With KF6" width="300" height="263" class="alignnone size-medium wp-image-466" srcset="https://tellico-project.org/wp-content/uploads/tellico_kf6-300x263.png 300w, https://tellico-project.org/wp-content/uploads/tellico_kf6.png 735w" sizes="(max-width: 300px) 100vw, 300px" /></p>Tellico BlogThis week in KDE: a deluge of new featureshttps://pointieststick.com/2024/03/08/this-week-in-kde-a-deluge-of-new-features/Sat, 09 Mar 2024 06:26:12 +0000http://pointieststick.com/?p=19206<p>The floodgates are fully open and developers have started landing juicy features for Plasma 6.1!</p> <p>But not just that&#8230; we asked for bug reports and you folks gave us bug reports! Usually we get 30-50 per day, but now we&#8217;re up to 150-200. It&#8217;s kind of crazy.</p> <p>Now, this doesn&#8217;t mean the software is actually really buggy. It means that people are <em>using</em> the software! Most of the bug reports actually not about KDE issues at all: graphics driver issues, bugs in themes, and bugs in 3rd-party apps. And many are duplicates of existing known issues, or really weird exotic issues only reproducible with specific combinations of off-by-default settings.</p> <p>Of course some are more significant, but at this point I think we&#8217;ve got most of them fixed. There are still a couple open&#8211;such as slow login and black lock screens with certain setups&#8211;but both have open merge requests to fix them, so I expect those to be fixed pretty soon too.</p> <h2 class="wp-block-heading">New Features</h2> <p>You can now split embedded terminal views in Kate horizontally or vertically (Akseli Lahtinen, Kate 24.05. <a target="_blank" href="https://invent.kde.org/utilities/kate/-/merge_requests/1417">Link</a>)</p> <p>You can now configure whether the magnifier in Spectacle&#8217;s Rectangular Region mode is always on, always off, or only on while holding down the Shift key (Noah Davis, Spectacle 24.05. <a target="_blank" href="https://invent.kde.org/graphics/spectacle/-/merge_requests/338">Link</a>)</p> <p>There are now &#8220;<a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=416570">edge barrier</a>&#8221; and &#8220;<a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=451744">corner barrier</a>&#8221; features when you&#8217;ve using a multi-screen setup. These barriers add virtual spacing between screens, so that it&#8217;s easier for you to click on the pixels touching shared screen edges. Why would you want to do this? For example to make <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=351175">auto-hide panels between screens</a> possible, and to make it easy to click the close button of a maximized window with another screen next to it. Note that these features are Wayland-only. And yes, you can turn these features off if you don&#8217;t like them, and also adjust the size of the barrier&#8217;s virtual space (Yifan Zhu, Plasma 6.1):</p> <div class="wp-block-image"> <figure class="aligncenter size-full"><img data-attachment-id="19271" data-permalink="https://pointieststick.com/2024/03/08/this-week-in-kde-a-deluge-of-new-features/image-32/" data-orig-file="https://pointieststick.files.wordpress.com/2024/03/image.png" data-orig-size="1744,1265" data-comments-opened="1" data-image-meta="&#123;&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="image" data-image-description="" data-image-caption="" data-medium-file="https://pointieststick.files.wordpress.com/2024/03/image.png?w=300" data-large-file="https://pointieststick.files.wordpress.com/2024/03/image.png?w=1024" src="https://pointieststick.files.wordpress.com/2024/03/image.png" alt="" class="wp-image-19271" /></figure></div> <p>You can now hide the Web Browser widget&#8217;s navigation bar, making it suitable for cases where it&#8217;s simply monitoring the same web page you never navigate away from (Shubham Arora, Plasma 6.1. <a target="_blank" href="https://invent.kde.org/plasma/kdeplasma-addons/-/merge_requests/550">Link</a>)</p> <p>Manual session saving now works on Wayland. Note that until real session restore is added, this will be hooking into the &#8220;real fake session restore&#8221; feature I <a target="_blank" href="https://pointieststick.com/2024/02/23/this-week-in-kde-real-fake-session-restore/">blogged about a few weeks ago</a> (David Edmundson, Plasma 6.1. <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=436318">Link</a>)</p> <h2 class="wp-block-heading">UI Improvements</h2> <p>When you have Spectacle configured to not take a screenshot when launched, the window that appears on launch now gives you the opportunity to take a screen recording too (Noah Davis, 24.05. <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=468778">Link</a>)</p> <p>Search results for pages in System Settings now better prioritize exact name matches (Alexander Lohnau, Plasma 6.0.1. <a target="_blank" href="https://invent.kde.org/plasma/systemsettings/-/merge_requests/297">Link</a>)</p> <p>Using a keyboard shortcut to activate the Calculator widget on a Panel now passes focus to it correctly so you can start typing to calculate things immediately (Marco Martin, Plasma 6.0.2. <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=481967">Link</a>)</p> <p>When using the Kicker Application Menu launcher, you can now do calculation and unit conversion, and find the power and session actions by searching for them (me: Nate Graham, Plasma 6.1. <a target="_blank" href="https://invent.kde.org/plasma/plasma-desktop/-/merge_requests/2090">Link</a>)</p> <p>The new &#8220;Shake cursor to find it&#8221; effect is now enabled by default (Vlad Zahorodnii, Plasma 6.1. <a target="_blank" href="https://invent.kde.org/plasma/kwin/-/merge_requests/5365">Link</a>)</p> <p>The new Printers page in System Settings now does a better job of helping you figure out what to do next when it finds a driverless network printer that doesn&#8217;t have the right drivers installed (yes, that sounds like a contradiction, but such is life) (Mike Noe, Plasma 6.1. <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=482409">Link</a>)</p> <p>Panel widgets&#8217; popups now close when you click on an empty area of the Task Manager (David Edmundson, Plasma 6.1. <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=367815">Link</a>)</p> <p>By default, XWayland apps are now allowed to listen for non-alphanumeric keypresses, and shortcuts using modifier keys. This lets any global shortcut features they may have work with no user intervention required, while still not allowing arbitrary listening for alphanumeric keypresses which could potentially be used maliciously (me: Nate Graham, Plasma 6.1. <a target="_blank" href="https://invent.kde.org/plasma/kwin/-/merge_requests/4601">Link</a>)</p> <p>Bluetooth connection failures are now additionally mentioned in the widget pop-up itself, right next to the thing you clicked on to try the connection which is where your eyeballs were probably still looking (Patrik Fábián, Plasma 6.1. <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=449517">Link</a>)</p> <p>The width of the clipboard history popup that appears when you press <code>Meta+V</code> now has a width that&#8217;s capped at a lower, more sane level when you&#8217;re using an ultrawide screen (Dominique Hummel, Plasma 6.1. <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=482389">Link</a>)</p> <h2 class="wp-block-heading">Bug Fixes</h2> <p>Gwenview no longer crashes when opening certain FITS image files (Albert Astals Cid, Gwenview 24.02.1. <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=482615">Link</a>)</p> <p>Minimizing a Dolphin window no longer causes all of its panels to get hidden (Nicolas Fella, Dolphin 24.02.1. <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=481952">Link</a>)</p> <p>Fixed a glitch with multi-line text selection in Okular (Okular 24.02.1. <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=482249">Link</a>)</p> <p>While dragging a file in Dolphin, if it happens to pass over other files and linger there for a bit, the other files no longer get immediately opened (Akseli Lahtinen, Dolphin 24.05. <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=479960">Link</a>)</p> <p>Plasma no longer crashes when you open Kickoff or Kicker while uninstalling an app that&#8217;s in the Favorites list (Marco Martin, Plasma 6.0.1. <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=481855">Link</a>)</p> <p>Launching/activating items with the Enter key in the Kicker Application Menu once again works (Marco Martin, Plasma 6.0.1. <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=482005">Link</a>)</p> <p>&#8220;Get [app name]&#8221; search results from KRunner once again work (Nicolas Fella, Plasma 6.0.1. <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=481932">Link</a>)</p> <p>Fixed a regression with System Tray icon support that caused some apps&#8217; tray icons to show the wrong icon (Nicolas Fella, Plasma 6.0.1. <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=479712">Link</a>)</p> <p>When you drag multiple files from Dolphin onto the desktop, they no longer stack on top of one another until Plasma is restarted (Marco Martin, Plasma 6.0.1. <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=482302">Link</a>)</p> <p>Discover no longer crashes when you search for various fairly common terms, including &#8220;libreoffice&#8221; (Aleix Pol Gonzalez, Plasma 6.0.2. <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=482095">Link</a>)</p> <p>Fixed the &#8220;Move to Desktop &gt; All Desktops&#8221; titlebar menu item on X11 (Nicolas Fella, Plasma 6.0.2. <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=482670">Link</a>)</p> <p>Fixed a case where Plasma could exit (not crash) with a Wayland protocol error after turning screens off and back on again (Vlad Zahorodnii, Plasma 6.0.2. <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=482399">Link</a>)</p> <p>Fixed a case where KWin could crash when a window was opened on a secondary screen plugged into a secondary GPU (Xaver Hugl, Plasma 6.0.2. <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=482859">Link</a>)</p> <p>Our previous fix for VLC and MPV not being able to go full screen turned out not to be enough, so we beefed it up, and now it should actually always work (Łukasz Patron, Plasma 6.0.2. <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=477086">Link 1</a> and <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=481456">link 2</a>)</p> <p>Fixed a bug that could cause Night Color to not work on systems with certain graphics hardware (Xaver Hugl, Plasma 6.0.2. <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=482143">Link</a>)</p> <p>The first search result in the Kicker Application Menu is no longer sometimes covered up by the search field (Marco Martin, Plasma 6.0.2. <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=482736">Link</a>)</p> <p>When you drag a window off the left side of the screen on X11, the cursor no longer moves unexpectedly (Yifan Zhu, Plasma 6.0.2. <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=482687">Link</a>)</p> <p>Setting your system language to &#8220;C&#8221; on System Settings&#8217; Region &amp; Language page no longer mangles the text of the previews for individual formats (Han Young, Plasma 6.0.2. <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=482234">Link</a>)</p> <p>Fixed a case where Discover could crash on launch when its Flatpak backend is active (David Redondo, Plasma 6.1. <a target="_blank" href="https://invent.kde.org/plasma/discover/-/merge_requests/771">Link</a>)</p> <p>When you have a Panel at the top of the screen, showing its config dialog no longer overlaps the global Edit Mode Toolbar; instead, the toolbar jumps down to the bottom of the screen where there&#8217;s plenty of space for it (Niccolò Venerandi, Plasma 6.1. <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=460714">Link</a>)</p> <p>Downloading items in the &#8220;Get New [thing]&#8221; dialogs that only have a single file available once again works (Akseli Lahtinen, Frameworks 6.1. <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=482349">Link</a>)</p> <p>Various actions throughout KDE apps that open the default terminal app&#8211;such as Dolphin&#8217;s &#8220;Open Terminal Here&#8221; menu item&#8211;once again work (Nicolas Fella, Frameworks 6.1. <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=482107">Link</a>)</p> <p>&#8220;Horizontal bars&#8221; graphs in various System Monitor widgets now use the right colors (Arjen Hiemstra, Frameworks 6.1. <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=482671">Link</a>)</p> <p>Menu items in context menus for text fields in QtQuick-based apps are now translated (Evgeny Chesnokov, Frameworks 6.1. <a target="_blank" href="https://invent.kde.org/frameworks/qqc2-desktop-style/-/merge_requests/376">Link</a>)</p> <p>Made a bunch of places icons in the Breeze icon theme respect the accent color, just like their compatriots (Someone going by the pseudonym &#8220;leia uwu&#8221;, Frameworks 6.1. <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=478016">Link</a>)</p> <p>Other bug information of note:</p> <ul> <li>2 Very high priority Plasma bugs (down from 3 last week). <a target="_blank" href="https://bugs.kde.org/buglist.cgi?bug_severity=critical&amp;bug_severity=grave&amp;bug_severity=major&amp;bug_severity=crash&amp;bug_severity=normal&amp;bug_severity=minor&amp;bug_severity=task&amp;bug_status=UNCONFIRMED&amp;bug_status=CONFIRMED&amp;bug_status=ASSIGNED&amp;bug_status=REOPENED&amp;known_name=VHI-priority%20Plasma%20bugs&amp;list_id=2125490&amp;priority=VHI&amp;product=Bluedevil&amp;product=Breeze&amp;product=Discover&amp;product=drkonqi&amp;product=frameworks-kirigami&amp;product=frameworks-plasma&amp;product=frameworks-qqc2-desktop-style&amp;product=kactivitymanagerd&amp;product=kde-gtk-config&amp;product=kdeplasma-addons&amp;product=khelpcenter&amp;product=kinfocenter&amp;product=klipper&amp;product=kmenuedit&amp;product=krunner&amp;product=KScreen&amp;product=kscreenlocker&amp;product=ksmserver&amp;product=ksysguard&amp;product=KSystemLog&amp;product=kwin&amp;product=Plasma%20SDK&amp;product=Plasma%20Vault&amp;product=Plasma%20Workspace%20Wallpapers&amp;product=plasma-integration&amp;product=plasma-nm&amp;product=plasma-pa&amp;product=plasma-simplemenu&amp;product=plasmashell&amp;product=policykit-kde-agent-1&amp;product=Powerdevil&amp;product=print-manager&amp;product=printer-applet&amp;product=pulseaudio-qt&amp;product=systemsettings&amp;product=Touchpad-KCM&amp;product=user-manager&amp;product=xdg-desktop-portal-kde&amp;query_based_on=VHI-priority%20Plasma%20bugs&amp;query_format=advanced">Current list of bugs</a></li> <li>36 15-minute Plasma bugs (3 more than last week). <a target="_blank" href="https://bugs.kde.org/buglist.cgi?bug_severity=critical&amp;bug_severity=grave&amp;bug_severity=major&amp;bug_severity=crash&amp;bug_severity=normal&amp;bug_severity=minor&amp;bug_severity=task&amp;bug_status=UNCONFIRMED&amp;bug_status=CONFIRMED&amp;bug_status=ASSIGNED&amp;bug_status=REOPENED&amp;known_name=VHI-priority%20Plasma%20bugs&amp;list_id=2101429&amp;priority=HI&amp;product=Bluedevil&amp;product=Breeze&amp;product=Discover&amp;product=drkonqi&amp;product=frameworks-plasma&amp;product=kactivitymanagerd&amp;product=kde-gtk-config&amp;product=kdeplasma-addons&amp;product=khelpcenter&amp;product=kinfocenter&amp;product=klipper&amp;product=kmenuedit&amp;product=krunner&amp;product=KScreen&amp;product=kscreenlocker&amp;product=ksmserver&amp;product=ksysguard&amp;product=KSystemLog&amp;product=kwayland-integration&amp;product=kwin&amp;product=Plasma%20SDK&amp;product=Plasma%20Vault&amp;product=Plasma%20Workspace%20Wallpapers&amp;product=plasma-disks&amp;product=plasma-integration&amp;product=plasma-nm&amp;product=plasma-pa&amp;product=plasma-simplemenu&amp;product=plasma-systemmonitor&amp;product=plasmashell&amp;product=policykit-kde-agent-1&amp;product=Powerdevil&amp;product=print-manager&amp;product=printer-applet&amp;product=pulseaudio-qt&amp;product=systemsettings&amp;product=xdg-desktop-portal-kde&amp;query_based_on=VHI-priority%20Plasma%20bugs&amp;query_format=advanced">Current list of bugs</a></li> <li>173 KDE bugs of all kinds fixed over last week. <a target="_blank" href="https://bugs.kde.org/buglist.cgi?bug_severity=critical&amp;bug_severity=grave&amp;bug_severity=major&amp;bug_severity=crash&amp;bug_severity=normal&amp;bug_severity=minor&amp;bug_status=RESOLVED&amp;chfield=bug_status&amp;chfieldfrom=2024-3-1&amp;chfieldto=2024-3-8&amp;chfieldvalue=RESOLVED&amp;list_id=2638359&amp;query_format=advanced&amp;resolution=FIXED">Full list of bugs</a></li> </ul> <h2 class="wp-block-heading">Performance &amp; Technical</h2> <p>Fixed a source of lag and frame drops on some systems with certain graphics hardware (Xaver Hugl, Plasma 6.0.1. <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=482064">Link</a>)</p> <h2 class="wp-block-heading">Automation &amp; Systematization</h2> <p>Wrote a tutorial for how to set up <a target="_blank" href="https://develop.kde.org/docs/packaging/android/packaging_applications/">automatic publishing of your KDE app</a> to <a target="_blank" href="https://search.f-droid.org/?q=kde&amp;lang=en">KDE&#8217;s F-Droid repository</a> (Ingo Klöcker, <a target="_blank" href="https://invent.kde.org/documentation/develop-kde-org/-/merge_requests/353#note_886741">Link</a>)</p> <p>Updated the tutorial for how to write a System Settings page (KCM) to reflect modernity (Akseli Lahtinen, <a target="_blank" href="https://invent.kde.org/documentation/develop-kde-org/-/merge_requests/355">Link</a>)</p> <p>Added an autotest ensuring that a special feature of KConfig and desktops files works (David Faure, <a target="_blank" href="https://invent.kde.org/frameworks/kconfig/-/merge_requests/282">Link</a>)</p> <h2 class="wp-block-heading" id="and-everything-else">&#8230;And Everything Else</h2> <p>This blog only covers the tip of the iceberg! If you&#8217;re hungry for more, check out <a target="_blank" href="https://planet.kde.org" rel="nofollow">https://planet.kde.org</a>, where you can find more news from other KDE contributors.</p> <h2 class="wp-block-heading" id="how-you-can-help">How You Can Help</h2> <p>Please help with bug triage! The Bugzilla volumes are extraordinary right now and we are overwhelmed. I&#8217;ll be doing <a target="_blank" href="https://pointieststick.com/2024/03/09/how-you-help-with-quality/">another blog post on this tomorrow</a>; for now, if you&#8217;re interested, <a target="_blank" href="https://community.kde.org/index.php?title=Guidelines_and_HOWTOs/Bug_triaging">read this</a>.</p> <p>Otherwise, visit <a target="_blank" href="https://community.kde.org/Get_Involved">https://community.kde.org/Get_Involved</a> to discover other ways to be part of a project that really matters. Each contributor makes a huge difference in KDE; you are not a number or a cog in a machine! You don’t have to already be a programmer, either. I wasn’t when I got started. Try it, you’ll like it! We don’t bite!</p> <p>As a final reminder, 99.9% of KDE runs on labor that KDE e.V. didn&#8217;t pay for. If you&#8217;d like to help change that, <a target="_blank" href="https://kde.org/community/donations/">consider donating today</a>!</p>Nate GrahamKrita Monthly Update – Edition 13https://krita.org/en/posts/2024/monthly-update-13/Sat, 09 Mar 2024 00:00:00 +0000https://krita.org/en/posts/2024/monthly-update-13/<p>Welcome to all krita artists, this monthly zine is curated for you by the <a target="_blank" href="https://krita-artists.org/g/krita-promo">Krita-promo</a> team.</p> <h2 id="development-report">Development report</h2> <ul> <li> <p><strong>Changes to KDE Binary Factory - Krita Next and Krita Plus builds</strong></p> <p>Nightly builds for Windows and Linux have been moved to GitLab. Binary Factory is now decommissioned. Due to this change the nightly build service is temporarily discontinued. The developers are working on getting the build up again.</p> </li> <li> <p><strong>New Krita website is released.</strong></p> <p>The work for the new website was ongoing for some time so we are glad to <a target="_blank" href="https://krita.org/en/posts/2024/new-krita-site/">announce</a> that it is live now. The new website offers a light and dark theme. It is cleaner and the translation to other languages is much easier now. We are always working to improve the website so if you find any rough edges please let us know.</p> </li> <li> <p><strong>Internal Roadmap for Krita</strong></p> <p>The developers had an online meeting on 26th February to discuss the future path for Krita development. Stay tuned for an upcoming blog post here for more details about this meeting. In the meantime, enjoy these meeting highlights. The agenda for the meeting was:</p> <ul> <li> <p><strong>How to handle social networks and having a social media strategy.</strong></p> <p>Krita’s social media presence was handled by the developers earlier, but since they are busy with Krita’s development, we can request volunteers to help us. Krita-Artists group of volunteers can be asked to handle social media posting and any volunteers are welcome to join the group.</p> </li> <li> <p><strong>Challenges and feasibility of keeping the support for Android version.</strong></p> <p>The person who was handling the support for the Android version has gotten busy with life so currently there is no one to look after it. The builds are also stopped due to our build server getting decommissioned. Dmitry is looking into the automated build issue but the team needs a way to keep the support up. There may be close to 500,000 users of Krita on this platform. Volunteers are more than welcome to join us in this endeavour.</p> </li> <li> <p><strong>Various other aspects related to development</strong></p> <ul> <li>The developers discussed some features that can be implemented such as audio waveform support in the animation timeline and the future path for creating a mobile UI.</li> <li>A Strategy for porting Krita to the next version of Qt (Qt is the underlying base that is used to build Krita).</li> <li>Areas where GPU computation can help. Artists who joined the meeting said that filters and transform masks were slow in krita. Our Liquify tool also needs a performance boost. So GPU utilisation in this area is welcome.</li> <li>Tiar will be investigating how to do AI assisted Inking. <strong>Disclaimer</strong> - this doesn’t mean we will be using the popular AI models out there. We intend to do this ethically and as this is still in the initial investigation stage, the developers are still discussing various aspect about how to approach this subject.</li> <li>How to handle PS style clipping mask - Deif Lou has done an awesome job in researching and investigating the clipping mask, layer effects and blending mode technicalities. The team intends to look into this and tackle this feature together.</li> </ul> </li> </ul> </li> <li> <p><strong>New features that got merged this month</strong></p> <ul> <li> <p><strong>Close Gap in fill tool is finally here!</strong></p> <p><a target="_blank" href="https://krita-artists.org/u/yrh/summary">YRH</a> created a gap-closing patch for the fill tool and that patch has been accepted to master. In this post, YRH points out that Dmitry and Krita users on this forum were instrumental in getting this done. You can read these latest comments and get the test builds from <a target="_blank" href="https://krita-artists.org/t/close-gap-in-fill-tool/32043/210?u=sooz">this post</a>.</p> <p><video controls width="100%"> <source src="videos/posts/2024/deevad-close-gap-in-fill.mp4" type="video/mp4"> There should have been a video here but your browser does not seem to support it. </video> (Video created by David Revoy)</p> </li> <li> <p><strong>Text tool on-canvas basic rich text editing</strong></p> <p>Wolthera has been busy with text tool for some time now. You can tell by the text tool update <a target="_blank" href="https://krita-artists.org/t/text-tool-thread/57973">thread</a> that she is merging really exciting things one after the other. This month, Krita got support for on-canvas text editing with basic rich text support. As kaichi1342 reports on the forum, currently common shortcuts like Ctrl B, I, U for bold italics and underline are working, full and partial color change of text works on canvas.</p> <p><video controls width="100%"> <source src="videos/posts/2024/wolthera-rich-text-editing.mp4" type="video/mp4"> There should have been a video here but your browser does not seem to support it. </video> (Video created by Wolthera)</p> </li> <li> <p><strong>Docker support added to popup palette</strong></p> <p>Freyalupen implemented docker support in the right click popup palette which can be of immense help for people who work on minimal canvas-only mode or for people using Krita on tablets. You can now use various dockers like the layer docker, brush preset history, etc., right from the right click popup palette.</p> <p><video controls width="100%"> <source src="videos/posts/2024/freyalupen-popup-palette-dockers4.mp4" type="video/mp4"> There should have been a video here but your browser does not seem to support it. </video> (Video created by freyalupen)</p> </li> </ul> </li> </ul> <h2 id="community-report">Community report</h2> <h3 id="monthly-art-challenge">Monthly Art Challenge</h3> <p>Krita-Artists’ Monthly Art Challenge is a great way to stretch your skills and learn more about Krita.</p> <p>February’s Art Challenge theme was Architectural/Urban, designed by <a target="_blank" href="https://krita-artists.org/u/elixiah/summary">Elixiah</a>. We had a full slate of submissions to vote on at the end of the month. <a target="_blank" href="https://krita-artists.org/u/mythmaker/summary">Mythmaker</a> won the challenge with this image:</p> <p> <figure> <img src="images/posts/2024/monthly-contest-winner-entry-mythmaker.jpeg" class="img-fluid" alt="Entry by myhtmaker for monthly art challenge on KA" title="Entry by myhtmaker for monthly art challenge on KA" /> </figure> The challenge for this month is <a target="_blank" href="https://krita-artists.org/t/monthly-art-challenge-march-2024-marvellous-metal/85832">Marvellous Metal</a>. Why not join in? It’s a friendly competition where we even share tips and help each other with challenge submissions on the <a target="_blank" href="https://krita-artists.org/t/monthly-art-challenge-wips-and-discussion-thread-march-2024/85836/12">WIP thread</a>.</p> <h3 id="youtube-growth">YouTube Growth</h3> <p>The <a target="_blank" href="https://www.youtube.com/c/KritaOrgPainting">Krita YouTube channel</a> has reached 80,000 subscribers. That’s a gain of 17,000 subs in <a target="_blank" href="https://krita-artists.org/t/krita-weekly-update-january-2023-week-4/56799">just over a year</a>. Ramon’s most recent video, <a target="_blank" href="https://youtu.be/t81PkQwf7NM?si=OsG2AXYPUEYT7uWR">5.2.2 New Features</a>, has already had more than 86,000 views over the last month.</p> <div style="position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden;"> <iframe src="https://www.youtube.com/embed/t81PkQwf7NM" style="position: absolute; top: 0; left: 0; width: 100%; height: 100%; border:0;" allowfullscreen title="YouTube Video"></iframe> </div> <h2 id="featured-artwork">Featured artwork</h2> <h3 id="introducing-best-of-krita-artists-featured-artwork-nomination-process">Introducing “Best of Krita-Artists” Featured Artwork Nomination Process</h3> <p> <figure> <img src="images/posts/2024/featured-row.jpeg" class="img-fluid" alt="featured image row on KA" title="featured image row on KA" /> </figure> </p> <p><strong>Great news</strong>: Members Hall and the nomination process is now open to all Krita-Artists members. Everyone has the opportunity to nominate artwork for the featured gallery. Monthly submission threads will open on the 15th of each month. We’ll use your submissions to create a poll which will determine the top four. The winning images will be added to the featured gallery.</p> <p>The current <a target="_blank" href="https://krita-artists.org/t/best-of-krita-artists-february-2024-submissions-thread/84907">instructions and submission thread</a> explains everything you need to know in order to nominate artwork that you feel represents the best of Krita-Artists. In January, we’ll create an annual poll to vote for the very best from 2024.</p> <h2 id="noteworthy-plugin">Noteworthy plugin</h2> <p><a target="_blank" href="https://krita-artists.org/t/shortcut-composer-v1-5-0-plugin-for-pie-menus-multiple-key-assignment-mouse-trackers-and-more/55314">Shortcut Composer v1.5.0 Released</a> (this update requires Krita 5.2.2 or higher)</p> <p>Highlights of new features:</p> <ul> <li>New action: Rotate brush which rotates the brush tip of the current preset</li> <li>New action: Rotate canvas</li> <li>Tooltips with additional info that appear when hovering over settings</li> </ul> <p> <figure> <img src="images/posts/2024/shortcut_composer_screenshot.png" class="img-fluid" alt="|Screenshot of the plugin in action" title="|Screenshot of the plugin in action" /> </figure> </p> <h2 id="tutorial-of-the-month">Tutorial of the month</h2> <p>From David Revoy: Grayscale to Color – Character Design “A commented step-by-step guide and advice on how to paint an original fantasy character design from scratch in Krita.”</p> <div style="position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden;"> <iframe src="https://www.youtube.com/embed/Q7kMT78iBSg" style="position: absolute; top: 0; left: 0; width: 100%; height: 100%; border:0;" allowfullscreen title="YouTube Video"></iframe> </div> <h2 id="notable-changes-in-code">Notable changes in code</h2> <p>This section has been compiled by <a target="_blank" href="https://krita-artists.org/u/freyalupen/summary">[freyalupen]</a>. (Feb 5 - Mar 5, 2024)</p> <p>Stable branch (5.2.2+): Bugfixes:</p> <ul> <li>[Animation] Fix framerate resetting to 24 after adding audio or reopening the animation. (<a target="_blank" href="https://bugs.kde.org/481388">BUG:481388</a>) (<a target="_blank" href="https://invent.kde.org/graphics/krita/-/commit/8ece4acc96">commit, Dmitry Kazakov</a>)</li> <li>[Animation] Fix drawing on a paused animation to draw on the shown frame and without visual glitches. (<a target="_blank" href="https://bugs.kde.org/481244">BUG:481244</a>) (<a target="_blank" href="https://invent.kde.org/graphics/krita/-/commit/9b38692174">commit, Dmitry Kazakov</a>)</li> <li>[Animation] Fix added hold frames stopping playback until cache gets updated. (<a target="_blank" href="https://bugs.kde.org/481099">BUG:481099</a>) (<a target="_blank" href="https://invent.kde.org/graphics/krita/-/merge_requests/2082">merge request, Dmitry Kazakov</a>)</li> <li>[Assistant Tool] Small fixes for snapping on stroke start and other Assistant issues. (<a target="_blank" href="https://invent.kde.org/graphics/krita/-/merge_requests/2066">merge request, Mathias Wein</a>)</li> </ul> <p>Stable branch (5.2.2+) backports from Unstable: Bugfixes:</p> <ul> <li>Backport several older fixes from the 5.3 branch to the 5.2 branch, after they've had time to be tested for stability. This includes many fixes related to animation and/or transformation (<a target="_blank" href="https://bugs.kde.org/475385">BUG:475385</a>, <a target="_blank" href="https://bugs.kde.org/475334">BUG:475334</a>, <a target="_blank" href="https://bugs.kde.org/">BUG:444791</a>, <a target="_blank" href="https://bugs.kde.org/">BUG:456731</a>, <a target="_blank" href="https://bugs.kde.org/">BUG:476317</a>, <a target="_blank" href="https://bugs.kde.org/444791">BUG:478966</a>, <a target="_blank" href="https://bugs.kde.org/478448">BUG:478448</a>, <a target="_blank" href="https://bugs.kde.org/479664">BUG:479664</a>, <a target="_blank" href="https://bugs.kde.org/475745">BUG:475745</a>), but also fixes to colorize mask (<a target="_blank" href="https://bugs.kde.org/475927">BUG:475927</a>), adjustment layers (<a target="_blank" href="https://bugs.kde.org/473853">BUG:473853</a>), canvas inputs (<a target="_blank" href="https://bugs.kde.org/451424">BUG:451424</a>), colorpicking from labelled layers (<a target="_blank" href="https://bugs.kde.org/471896">BUG:471896</a>, <a target="_blank" href="https://bugs.kde.org/472700">BUG:472700</a>), and the ability to use the Wave filter as a mask (<a target="_blank" href="https://bugs.kde.org/476033">BUG:476033</a>). (<a target="_blank" href="https://invent.kde.org/graphics/krita/-/merge_requests/2086">merge request, Dmitry Kazakov</a>)</li> </ul> <hr> <p>Unstable branch (5.3.0-prealpha): Features:</p> <ul> <li>[Text Tool] Implement basic rich text editing in the on-canvas text tool. This includes changing the color with the color selectors, setting bold/italic/underline with keyboard shortcuts, and rich text copy/paste. (<a target="_blank" href="https://invent.kde.org/graphics/krita/-/merge_requests/2067">merge request, Wolthera van Hövell</a>)</li> <li>[Fill Tool] Implement 'Close Gap' option in the Fill Tool and Contiguous Selection Tool. This allows the unleaked filling of gapped lineart by treating gaps of a configured size as if they were closed. (<a target="_blank" href="https://invent.kde.org/graphics/krita/-/merge_requests/2050">merge request, Maciej Jesionowski</a>)</li> <li>[Popup Palette, Dockers] Add ability to show dockers, such as the Layers docker, in the Popup Palette's side panel. The On-Canvas Brush Editor that was in this panel is now a docker. (<a target="_blank" href="https://invent.kde.org/graphics/krita/-/merge_requests/2062">merge request, Freya Lupen</a>)</li> <li>[Brush Engines] Add Photoshop-like brush texturing modes where Strength affects the texture instead of the dab, enabled with the 'Soft texturing' checkbox in the brush Pattern Options. (<a target="_blank" href="https://invent.kde.org/graphics/krita/-/merge_requests/2068">merge request, Deif Lou</a>)</li> <li>[File Formats: JPEG-XL] Update libjxl and add options to export JPEG-XL with CICP profile and lossless alpha. (<a target="_blank" href="https://invent.kde.org/graphics/krita/-/merge_requests/2077">merge request, Rasyuqa A H (Kampidh)</a>)</li> <li>[Grids and Guides Docker] Add button to delete all guides. (<a target="_blank" href="https://invent.kde.org/graphics/krita/-/merge_requests/2078">merge request, reinold rojas</a>)</li> <li>[Animation: Onion Skins Docker] Add Reset option for Onion Skins' opacity in a right-click menu, to reset them to the default values. (<a target="_blank" href="https://bugs.kde.org/466977">WISHBUG:466977</a>) (<a target="_blank" href="https://invent.kde.org/graphics/krita/-/commit/e36d761cd2">commit, Emmet O'Neill</a>)</li> </ul> <p>Bugfixes:</p> <ul> <li>[Assistant Tool] Re-enable assistant preview for the eclipse, rectangle, polygon, and polyline tools. (<a target="_blank" href="https://invent.kde.org/graphics/krita/-/merge_requests/2073">merge request, reinold rojas</a>)</li> <li>[Layer Stack] Fix a bug which emitted a warning on undoing flattening a group. (<a target="_blank" href="https://bugs.kde.org/474122">BUG:474122</a>) (<a target="_blank" href="https://invent.kde.org/graphics/krita/-/merge_requests/2070">merge request, Dmitry Kazakov</a>)</li> </ul> <hr> <p>These changes are made available for testing in the latest development builds:</p> <ul> <li>Stable &quot;Krita Plus&quot; (5.2.2+): <a target="_blank" href="https://invent.kde.org/graphics/krita/-/pipelines?page=1&amp;scope=all&amp;ref=krita%2F5.2&amp;status=success">Pipeline List</a> | Download Latest: <a target="_blank" href="https://invent.kde.org/api/v4/projects/206/jobs/artifacts/krita/5.2/download?job=linux-build">Linux</a> - <a target="_blank" href="https://invent.kde.org/api/v4/projects/206/jobs/artifacts/krita/5.2/download?job=windows-build">Windows</a></li> <li>Unstable &quot;Krita Next&quot; (5.3.0-prealpha): <a target="_blank" href="https://invent.kde.org/graphics/krita/-/pipelines?page=1&amp;scope=all&amp;ref=master&amp;status=success">Pipeline List</a> | Download Latest: <a target="_blank" href="https://invent.kde.org/api/v4/projects/206/jobs/artifacts/master/download?job=linux-build">Linux</a> - <a target="_blank" href="https://invent.kde.org/api/v4/projects/206/jobs/artifacts/master/download?job=windows-build">Windows</a></li> </ul> <p>(macOS and Android builds will be available in the future.)</p> <hr> <h2 id="ways-to-help-krita">Ways to help Krita</h2> <p>Krita is a Free and Open Source application, mostly developed by an international team of enthusiastic volunteers. Donations from Krita users to support maintenance and development is appreciated. Join the <a target="_blank" href="https://fund.krita.org/">Development Fund</a> with a monthly donation. Or make a one-time donation <a target="_blank" href="https://krita.org/en/support-us/donations/">here</a>. <figure> <img src="images/pages/2021-11-16_kiki-piggy-bank_krita5.png" class="img-fluid" alt="donate to krita" title="donate to krita" /> </figure> </p>Krita NewsPSA: enable 3D acceleration in your VirtualBox VMshttps://pointieststick.com/2024/03/08/psa-enable-3d-acceleration-in-your-virtualbox-vms/Fri, 08 Mar 2024 17:07:24 +0000http://pointieststick.com/?p=19241<p>It&#8217;s come to our attention that <a target="_blank" href="https://bugs.kde.org/show_bug.cgi?id=481937">some changes made for KWin in Plasma 6</a> aren&#8217;t compatible with the old and outdated software-rendering graphics drivers in VirtualBox. Thankfully there&#8217;s a solution: <strong>enable 3D acceleration in the machine settings</strong>. It not only resolves the issue, but also enables all the fancy graphical effects you would expect to see on a bare-metal installation. <strong>This is especially important if you&#8217;re using a VM for a review, screenshots, or videos of Plasma 6!</strong></p> <p>I&#8217;ve reached out to the VirtualBox devs regarding the possibility of making this happen automatically. But in case that doesn&#8217;t happen, it&#8217;s up to VirtualBox users to <strong>manually enable 3D acceleration in their machine settings</strong>.</p>Nate Graham