This week in KDE: Better Samba sharing and remembered window positions

This week I implemented a much-requested feature: KDE apps now remember their main window positions when closed and re-launched! They even remember their positions (and soon their sizes too) on a per-screen-arrangement basis.

However, there are two important caveats here:

  1. Right now this only affects QWidgets-based KDE apps, and only their main windows.
  2. This feature only works on X11.

These limitations will be improved upon over time. On X11, QML-based apps and auxiliary non-dialog windows in QWidgets-based apps will get ported to use it over time. And on Wayland, an even better implementation is in progress that remembers positions for all windows at the window manager level–KDE and non-KDE apps alike! That’s some good stuff. The X11-only version that I already landed will show up in Frameworks 5.74, while the work-in-progress Wayland version will land in a Plasma release once it’s finished. Likely Plasma 5.21, but maybe 5.20 if we’re really lucky. 🙂

But wait, there’s more…

Other New Features

When you try to create a Samba share but there is no appropriate Samba user configured, you’re now warned of this and prompted to fix it, rather than share creation just failing silently (Harald Sitter, Dolphin 20.12.0)

Implemented the Wayland input-method-unstable-v1 protocol, which opens the door for proper virtual keyboard support on Plasma Mobile, among other benefits! (Aleix Pol Gonzalez, Plasma 5.20)

Bugfixes & Performance Improvements

Clicking on the title of the currently-playing song in Elisa once again takes you to the “Now Playing” view (Stef Lep, Elisa 20.12.0)

Fixed a bug that could cause KDE apps to fail to launch under certain circumstances (Harald Sitter, Frameworks 5.74)

Fixed a crash in System Settings when installing new items using a “Get New [Thing]” dialog (Dan Leinir Turthra Jensen, Frameworks 5.74)

Lyrics metadata for audio files encoded over 20 years ago on a pre-OS-X mac OS version are now displayed correctly throughout KDE software making use of the KFileMetadata framework, such as Dolphin and Elisa (me: Nate Graham, Frameworks 5.74)

Fixed a crash in KRunner when there is no Firefox profile (Fabian Vogt, Plasma 5.20)

User Interface Improvements

Kamoso’s folder picker dialog no longer has blurry pixelated icons when using a fractional scale factor (Matej Mrenica, Kamoso 20.08.1)

The Samba Sharing dialog now displays a warning if you try to configure a share such a way that it would be mostly broken (Harald Sitter, Dolphin 20.12.0)

The Device Notifier applet now displays a combobox in the main UI that lets you choose what it displays: only removable devices, only non-removable devices, or all devices (me: Nate Graham, Plasma 5.20)

Discover’s “Add Source” dialog now opens with the text field focused by default (me: Nate Graham, Plasma 5.20)

When switching virtual desktops using the Desktop cube Effect, any windows pinned to all desktops now float above the cube by default (me: Nate Graham, Plasma 5.20)

The options available for desktop icons sizes now follow a more regular progression; there’s no longer such a big difference between the two biggest sizes, nor such a small difference between the two smallest sizes (me: Nate Graham and Manuel Jesús de la Fuente, Plasma 5.20)

Discover’s “Task Progress” sheet now closes automatically if it’s still open when the last task completes (me: Nate Graham, Plasma 5.20)

There is no longer an unnecessary horizontal scrollbar in Okular’s settings window or the Power Management settings window (David Hurka, Frameworks 5.74)

The Global Menu applet’s menus now have adequate visual padding (Noah Davis, Frameworks 5.74)

How You Can Help

Have a look at https://community.kde.org/Get_Involved to discover 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!

Finally, consider making a tax-deductible donation to the KDE e.V. foundation.

40 thoughts on “This week in KDE: Better Samba sharing and remembered window positions

    1. Yes, I was planning to leave that to the PlaMo status update post that Bhushan will be sending out soon! It’s good stuff for sure.

      Like

    1. No, KWin’s window placement strategies are basically a fallback for the case for when the app does not try to manually position itself. Before this change, there were already several KDE apps that manually positioned themselves or remembered their window’s prior position, such as KRunner, Yakuake, Discover, and Elisa. After this change, far more KDE apps should position themselves by remembering their prior positions, so the KWin window placement strategy will be used much less often–mostly for 3rd-party apps which don’t remember their own window positions.

      On Wayland, KWin is *always* responsible for window positioning, so we will probably add a new “Remember Prior Positions” mode that you can choose instead of “Minimal Overlapping.” Or alternatively it could be an on-by-default option, and you’d still be able to choose the placement strategy for windows with no saved position data.

      Like

    2. Aah I don’t use any of those apps, so that’s probably why I never noticed. So if I want as much applications as possible to respect the “Minimal Overlapping” setting, once Frameworks 5.74 is out I should use the Wayland session, did I get it right? I’m already using it on my desktop PC without major issues, however my laptop can’t get past nvidia-drivers-340 so I’m stuck on X11 there. Will there be a way to keep the current behavior on X11 (which means I’m fine if the apps you mentioned keep positioning themselves, I just want everything to stay the same as it is XD)?

      Like

    3. Yes, you should use Wayland in this case. On X11, there isn’t a clean way to tell KWin to ignore the app’s own positioning preferences without using per-window rules since this would break KRunner and all Plasma pop-ups (technically those are windows too) if we tried to do it universally. I suppose we could make the new “remember window position for KDE apps” feature optional, but it’s not clear where the setting would or could live.

      Like

    4. As always, thanks for your dedication keeping in touch with your users 😀
      For me this would be just a nice to have, certainly not a deal breaker, so don’t worry. Most likely I will get used to it 😉

      Liked by 1 person

    5. Adding a way to not remember positions on X11 is something I toy with. I know that there are probably some people who won’t like it and will complain if there’s no way to disable it, and on Wayland, there will be an option to disable it (use a different positioning mode), so it’s not totally unreasonable to addone for X11 too.

      I mostly need to figure out where to add it. The window management KCM? maybe?

      Like

  1. What about Special Window Settings? It allows you to create window rules that will save/restore the size and position of the window.

    Like

    1. Then why this new feature, if there are window rules which can force any application to save/restore its prior size and position? Better to concentrate fully on improving supporting fractional scaling

      Like

    2. Applying those rules universally runs into various problems on X11, unfortunately. It can work tolerably when you use the feature to target individual windows, but doing it universally is much more challenging to make it work.

      Working on one thing does not imply neglect for another thing. 🙂 What fractional scaling problems are you running into?

      Like

    3. Heh those are the toughest ones to fix! If they were easy, they would have been fixed ages ago. The Konsole issue is being looked at by various people but it seems quite challenging to fix.

      As for the issue of blurry icons, what do you suggest?

      Like

  2. Hi Nate, I want to express my gratitude for your work to summarize the newest changes/progressions in KDE each weak. Since I discovered this blog series on Planet KDE at some time last year, I’m looking forward to it every weekend 🙂 I also enjoyed the interview with you on Linux Spotlight very much! Thanks alot!

    Like

    1. Yes, the Linux Spotlight interview was excellent. I was so impressed I cut out 3.5 mins worth and emailed the mp4 attachment to quite a few friends who had no chance of sitting through a 2 hour youtube video.

      Like

  3. The Device Notifier applet now displays a combobox in the main UI that lets you choose what it displays: only removable devices, only non-removable devices, or all devices (me: Nate Graham, Plasma 5.20)

    combobox in widget is so strange for me
    i guess checkboxs are better in this situation

    what do u think

    Like

    1. It can’t be a checkbox because there are three options, and checkboxes only work for binary (on/off, true/false) options.

      Like

  4. Samba sharing on KDE is broken for years: The proprietary smb: protocol is not even followed by all KDE applications (beware of other good packages) and smb4k which could provide ordinary mount points does not work either for at least 5 years….

    Nate, please abstain from telling me “do it yourself”. I am way too old do coding anymore.

    Like

  5. Nate, Thanks again for this weekly post. It tells us what is going on in KDE and keep us waiting for these new updates. I wait for this post every week.

    Also I saw the podcast and it was a huge eye opener for me. All the time when you said something I was just nodding the whole time agreeing to so many things you said. Like you said in that podcast KDE gives you choice and doesn’t enforce something on users and that’s what I like about it. As it adapts according to user needs as you understand that users have different taste and if you enforce something it can cause issue with some users as many might not agree with it. And with plasma giving so many choices it just how I like. Also about the mint thing it broke for me so many times when doing those upgrades and I always liked using latest packages so switched to Arch for that reason. Your vision and passion towards this project is awesome. Thanks for sharing that podcast, it really gave me a whole new perspective and even greater respect towards the work that you and other KDE devs do.

    On another note are their any other people that you are aware of that do the blogs like you do. Like they tell about stuff being worked on or something like that or maybe discuss about some hidden features that we might not be aware of like I didn’t even know krunner has so many features even though I have been using kde for more than 2 years now.

    Liked by 2 people

  6. Hello Nate, I’ve been following your posts from a while and you are making a great job!!

    I just want to ask, all your updates are based on the latest version of KDE Neon User distro?

    Like

    1. Thanks!

      I personally use openSUSE Tumbleweed. But it doesn’t matter; all of this stuff will eventually make it into all of the distros that ship Plasma and KDE apps. 🙂 Neon user edition is one of the ones that will get these KDE updates quickly, just like the rolling release distros.

      Like

    2. And do you use PackageKit in openSUSE ? With me that package does not work, Discover does not work either…

      Like

  7. Nice! I did not know that window positions where not remembered before. I only was annoyed of windows not opening where I closed them before, but thought that might be just a setting needed to be adjusted. So thank you very much for adding this function!

    Can’t wait to see this land for Wayland!

    Liked by 1 person

Leave a comment