April 17, 2017

We have released a bugfix update of Calligra. The 3.0.1 version contains the following fixes:


  • Fix crash in move command when using arrow keys
  • Respect container boundaries when moving shapes by arrow keys
  • Remove shape manipulation handles when the tool is deactivated
  • Always display shapes in the the same order in the ‘Add shape’ docker


  • Improve formatting of scientific numbers
  • Fix save/load of cell borders


  • Bug 376469: Bad month calendar in Work & Vacation
  • Day numbers where not initialized correctly.
  • Manually entered dates where not parsed correctly.
  • Use default currency symbol if the currency symbol is not explicitly set


  • Fix crash when chart type is changed
  • Fix crash when a chart component is deleted
  • Fix crash when x- or y-axis is removed
  • Fix ui when editing axis label
  • Limit moving chart components to chart boundaries
  • Fix edit font dialog: Keep the axis fonts QFont size in sync with
    KCharts fontSize
  • Fix save/load of axis label font size and font family
  • Save/load legend alignment flags
  • Do not save axis label if it is not visible
  • Always do legend alignment when legend becomes visible.
  • Make axis dimensions translatable
  • Add undo command for hide/show titles
  • Add undo command for add/remove axis
  • Respect margins/spacing
  • Handle resizing in a reasonable way

April 16, 2017

Hi to everyone!!
I’m really proud to have designed the banner for Kubuntu 17.04.
I used the beautiful Ken Vermette wallpaper as a base. I hope you like it!


You can find it on Kubuntu.org

April 15, 2017

Ideas and Concepts

In the last 3 months I played with the awesome feature of Notebookbar. This experimental feature give the user the possibility to use a tabbed toolbar like Microsoft does, but it offers more, much more. I like the idea from the LibreOffice UX team about the context based toolbar. Advantage of the different UI elements:


Toolbars are great to offer the users the most frequently used actions. You can group them and with the Notebookbar you can arrange them in different sizes, with and without labels. The disadvantage is that you can’t show all functions from LibreOffice in the toolbar.


The benefit of a menu bar is that you can sort all actions into a useful structure, and the experienced users know where to find actions that they used only from time to time. The disadvantage of a menubar is that you have to navigate through the structure.


The sidebar is great to group sections of actions, and you have a lot of vertical space, so I decided to use some layout examples from the sidebar.

Tabbed Toolbar

The benefit is that you can show all actions within the toolbar because actions are placed on different tabs. The problem is that the user have to know where the actions are.

Grouped Toolbar

The LibreOffice UX team introduced the toolbar with contextual section, that I like much because users can assign actions to different groups and label them. The Notebookbar offers also the option to place button in different sizes onto the canvas, which is used in the variant with contextual section to draw attention to more relevant actions.

Advanced Grouped Toolbar

My proposal starts with the variant “contextual sections” and extends it to the menubar. In addition I’m a fan of consistency so this is my idea:


Groupedbar full

The idea is to combine the top level structure from the main menu with grouped toolbar sections.Sections always start with one big labeled icon followed by two rows with 24px icons and labels if needed. Next to the section label a menu is placed at bottom right that provides access to less often used functions from this group. Furthermore small buttons open dialogs from the group (e.g. Paragraph settings on the Format section). The label is also a drop down menu like in the menubar.

So I have the benefit of a toolbar where you can show the main actions for different groups by one click. Advanced actions for a group via smaller icons and a group label to support orientation in the UI. With the bottom menu you get all actions for one group with two clicks.

The drawback of this solution is that 10 sections or more exceeds the common width of 1280px. Ribbons solve this problem  with tabs, I’ll do it per contextually showing sections, depending on the screen resolution. he extended grouped toolbar was designed with 1920px (full HD screen resolution) in mind, but will also work on 1280px and on 2560px Screens.

Groupedbar compact

The design is the same as for the extended grouped toolbar but with only one icon row and a second row with the group labels. For users how don’t need the section labels, those can be hidden to save even more space.

What’s done

This isn’t just a mockup, it’s a real UI file – you can/should test the extended grouped toolbar and the single line toolbar. Thanks to Szymon Kłos

LibreOffice Theme

Unfortunately there are some open bugs:

  1. Switching section depending on the context is not as smooth and flicker-free as possible (see switch between text view and table view) Bug 107083
  2. The group labels don’t work as known from the menubar. Implemented as just a label makes…, because something like the drop down menubar behavior isn’t available yet. Bug 107084
  3. Theming work now with firefox personas it would be nice if I could define system colors without personas. Bug 107128
  4. Show/hide the label row isn’t possible with a simple action. Bug 107085
  5. There are some missing content views like for print and for insertdraw. This bug is still open for the other content based toolbars. Bug 106505 and 107127
  6. The priority content for the notebookbar need some improvement. Bug 107129
  7. Show/hide button labels depending on the windows size. Bug 106566
  8. The action expander for e.g. Paste, Table, … should be right to the label instead of vertical align. Than the alignment of the labels is perfect. Bug 106564


I’d like to integrate the two layouts into LibreOffice master asap you can download a daily build for your System. You can download the .ui files and move them to /share/config/soffice.cfg/modules//ui see „How to create your own Notebookbar“.

Help is very welcome.

April 13, 2017

Codenamed “Zesty Zapus”, Kubuntu 17.04 continues our proud tradition of integrating the latest and greatest open source technologies into a high-quality, easy-to-use Linux distribution.

The team has been hard at work through this cycle, introducing new features and fixing bugs.

Under the hood, there have been updates to many core packages, including a new 4.10-based kernel, KDE Frameworks 5.31, Plasma 5.9.4 and KDE Applications 16.12.3.

The Kubuntu Desktop has seen some exciting improvements, with newer versions of Qt, updates to major packages like Krita, Kdenlive, Firefox and LibreOffice, and stability improvements to the Plasma desktop environment.

For a list of other application updates, upgrading notes and known bugs be sure to read our release notes.

Download 17.04 or read about how to upgrade from 16.10.

As an Easter treat here is a quick taster of some of the animation goodies coming to Qt 3D along with Qt 5.9. In this post we will briefly outline the steps needed to create a simple Qt 3D application and the assets it uses to produce this little animation: continue reading

The post Qt 3D Animation Easter Teaser appeared first on KDAB.

April 12, 2017

Hi! Today I'm here to share an experience and show you an Application that I did last weekend. On the last Saturday, I went to an event called Progressive Web Apps Roadshow made by Google. It's an event that is going around the world, where Googlers talk about Progressive Web Apps and why they are [...]

Thanks to the work of our volunteers, with a special mention to Matthias Heil and Karin Cienkowski, we’re happy to announce the official opening of the German portal of WikiToLearn. We hope it will be of great service to the German community and we’re sure it will help creating even more free textbooks for everyone to use.

If you speak German, we encourage you to become part of it, by using Feynman’s technique! Pick a topic you love, and write some chapters on it, explaining it to someone else. You will have a big positive impact on the world, and you will learn the subject with great efficiency.

The homepage of WikiToLearn in GermanThe homepage of WikiToLearn in German

63 pages are already live, including a small course introducing Python programming with Qt and KDE to high school students. What are you waiting for? Start sharing your knowledge: digitize your notes, talk to an institution close to you or just start editing some new content!

And remember:

Nur wenn Wissen geteilt wird, kann neues enstehen

…and of course, if you get stuck, you can always get help on the official Telegram channel or on the community chat.

L'articolo WikiToLearn: now available in German! sembra essere il primo su Blogs from WikiToLearn.


Build for Tomorrow
Deliver Today

The 14th annual Qt World Summit is returning to Berlin! Be sure to join the Qt event of the year taking place 10-12 of October at bcc, Berlin Congress Center.

Get ready for five tracks of inspiration as we bring the latest details on what is happening with Qt. From innovative demos to expert presentations, inspiring Speakers and the coolest applications imaginable. Whether you’re looking to take a deep technical dive or seeking business insights, we have something for everyone at this year’s Qt World Summit

Designed for business people and developers alike, the Qt event of the year has something for everyone who is envisioning, innovating and implementing tomorrow’s devices and applications.

At Qt World Summit in Berlin, get on the inside track on how software is driving the future of IoT. Learn the secrets to creating user experiences that stand out and are a pleasure to use – and a pleasure to build. See how you can maximize development performance for embedded, desktop, and mobile devices. Be a part of the biggest Qt event in 2017 – check out all the latest demos and Qt applications, meet with other Qt users and developers from all around the world and across multiple industries.

Tickets available now


Head over to the Qt World Summit website and click Register to make sure you are among the first to get your tickets.

Qt Contributors’ take note

This year we will not hold a separate Qt Contributors’ Summit, but we are inviting all Qt Contributors to a pre-event before Qt World Summit.

So mark your calenders, October 9th and 10th are the days, and the place is bcc.

To register, go to the Qt World Summit website and click Register, Qt Contributors’ Days are included in the ticket list with a nominal fee.

The post Qt World Summit 2017 Early Bird Tickets Now Available! appeared first on Qt Blog.

A small new feature that I have added to Qt 5.8 is the possibility of disabling narrowing conversions in the new-style QObject::connect statement. In this short blog post I would like to share with you why I thought this was useful and therefore implemented it.

The problem

Since Qt 5.0, the new-style, PMF-based (pointer to member function-based) QObject::connect will check at compile time if the signal’s signature is compatible with the slot’s one.

For instance, let’s consider these two …

The post Disabling narrowing conversions in signal/slot connections appeared first on KDAB.

April 11, 2017

In 100.0, Qt developers have even more capabilities for adding mapping and geographic analysis to native apps than ever before. 3D geographic visualization, 2D vector tiled basemap support, enriched error handling in the API, and additional geoprocessing tools are just a few of the new highlights.

Esri is proud to announce the commercial release of ArcGIS Runtime SDK 100.0 for Qt. This is quite a revolutionary and innovative release for ArcGIS developers. The API architecture is continuing to evolve for those of you who are looking to build great native applications for a wide range of devices and platforms!

In addition, Qt developers have more app deployment and design options. These include the following:

  • Support for writing C++ apps that can target all platforms, including macOS, iOS and Android. Esri is committed to providing as many developer options for Qt developers as possible!
  • Support for separating your QML and C++ business logic. Enabling support for this design pattern frees up the Qt developer to adopt best-design practices while writing great GIS apps!

A few of the highlighted features include, but are definitely not limited to:

  • 3D visualization – On desktop platforms, 3D has been brought to the ArcGIS Runtime for native app development. Build 3D scenes with raster, tiled and vector data sets including 3D specific symbology for enhancing viaualization of your geographic data. 


  • Maps and scenes – The Map object has been split out from the view that displays it, to represent the model or viewmodelcomponent in a Model-View-Controller (MVC) or Model-View-ViewModel (MVVM) architecture. This same design is also implemented for Scene objects.


  • Military symbology API – On desktop platforms, the API and workflow for using Military symbology has been greatly simplified in this release.


  • Go offline – To make things easy for you, the APIs for common operations such as editing, searching, geocoding or routing are the same whether you are online or offline.

There are too many capabilities to describe in this short post, so go check it out yourself. You’ll be surprised by how much you can achieve with ArcGIS Runtime SDK 100.0 for Qt.

We invite you all to download v100 and get started today!



The post ArcGIS Runtime SDK 100.0 by Esri is here appeared first on Qt Blog.

(a bit sick, so I’ll not write too much)

Sometimes I create a small widget for my own usecase and never blog about it, but this one I think it should be pushed upstream. It’s a small KComboBox that uses a KActionCollection based model to display *all* of the actionCollection’s actions.

The use case for me is really straigth forward – a lot of applications have *tons* of menu / toolbar options, sometimes none of them is visible to the user (unless the user knows where to look at), sometimes the user knows that something exists but cannot find it because the menus are huge, but he remembers the name, or parts of it. I know that this is true for me regarding Kate and the amount of possible programming languages it suports:

My idea is simple: if it’s easy for us to search for thousands of applications using a search line, it should also be fine to do the same thing for the possible actions on any application. thus, KActionRunner was programmed (in about an hour, so lot’s of bugs should still be there.)

The same rules apply for all software, default should be simple, but powerfull when required, and I do think this widget adds both things: it will still keep the defaults clean and it will make more power actions more easily discoverable.

I’ll also change the Delegate to make it more friendly to this post win98 era, but for now that’s what I have.

The code is currently in review, and I do belive that in it’s current state it will not pass ;), but it’s a Wip, and a Wip is for that. if there’s enougth love for that idea I’ll polish it.

In two weeks I’ll be in Augsburg at the 16th Augsburger Linux-Infotag.

Here you’ll have a chance to meet in person, have a look at the latest and greatest Plasma Desktop and see what’s coming up for Plasma 5.10 and other future goodies!

Date: Saturday, 22 April 2017
Time: 9:30 – 17:30
Place: Hochschule Augsburg, Fakultät für Informatik, Friedbergerstr. 2

April 10, 2017

Continuing my series about how input works in KWin/Wayland I want to discuss a brand new feature we implemented for Plasma 5.10. This year we had a developer sprint in Stuttgart and discussed what kind of touchpad and touch screen gestures we want to support and how to implement it. Now the result of this discussion got merged into our master branch and we are currently discussing which actions to use by default.

Gesture Recognizer

Touchpad and touch screen gestures are kind of similar so the approach we took is able to handle both of them. We introduced a GestureRecognizer which is able to recognize gestures (surprise) in a very abstract way. It doesn’t know how the input events look like, whether a touch screen, touchpad, mouse or whatever input device generated the event.

To use the GestureRecognizer a Gesture needs to be registered. The Gesture describes the actual Gesture which needs to be recognized. E.g. how many fingers need to participate in the gesture (for our touch screen gestures it is one, for our touchpad gestures it is four), the direction of the gesture (leftwards, rightwards, downwards, upwards), the minimum distance, the trigger position, etc. etc.

Now input events can be fed into the GestureRecognizer and the GestureRecognizer decides whether a Gesture is active or becomes non-active. As said this is absolutely generic, it doesn’t care how the events are triggered.

This alone does not yet allow to do anything with it, we don’t have any way to use the GestureRecognizer yet.
At this point our implementations for touchpad and touch screen divide. We have different existing implementations which are more suited than trying to have something shared for both.

Touchpad gestures

For touchpad gestures our global shortcuts handling is used. GlobalShortcutsManager is a KWin internal (!) mechanism to register some internal actions to tigger in a global way through input events. The GlobalShortcutsManager gained a GestureRecognizer and various areas in KWin can now register a QAction as a global touchpad gesture.

So far we still haven’t reached the elements we discussed in the previous posts like InputEventFilter. There is of course an InputEventFilter which feeds events into the GlobalShortcutsManager. This filter got extended to support touchpad gestures and now we have the full stack together:

  • libinput reports a touchpad gesture event
  • InputEventFilter passes the touchpad gesture event to the GlobalShortcutsManager
  • The GlobalShortcutsManager passes the information to the GestureRecognizer
  • The GestureRecognizer triggers the QAction
  • something happens

By default the following gestures are supported:

  • 4 finger swipe down: Present Windows
  • 4 finger swipe up: Desktop Grid
  • 4 finger swipe left/right: desktop next/previous

Screen edge support for touch

For touch screen gestures we used a different area in KWin which already provides a fairly similar functionality: Screen edge activation for mouse events.

It’s similar in the way that it activates an action when an input event happens at a screen edge. The main difference is the direction of the input event: for mouse it’s towards the edge, for touch it is from the edge.

The ScreenEdges gained a GestureRecognizer (you see there are two different, independently acting GestureRecognizers) and every Edge defines a Gesture. The Gesture is only passed to the GestureRecognizer if the Edge is reserved for a touch action. Each Edge can have a different action configured and of course you can configure different (or same) action for touch and mouse on the same Edge. When a Gesture for an Edge gets started we provide the same visual feedback as for the edges started through mouse events.

For ScreenEdges there is also a dedicated InputEventFilter which now gained support for touch events and feeds the touch events into the GestureRecognizer.

But there is more to it. This feature got backported to X11. Our X11-standalone platform plugin gained support for XInput 2.2 and touch events. KWin now listens for touch events on X11 and passes these events into the GestureRecognizer of the ScreenEdges. Thus the feature which we implemented on Wayland for Wayland is also available on X11 and directly usable for all users – be it on X11 or on Wayland.

Touchpad gestures are unfortunately only available on Wayland.

I just received another anonymous happiness package, this time personal:

You have worn many hats in open source over the years, not just as a contributor, but also as a mentor. I put a lot of high value into your thought-out opinions and insights. You have a unique and open-minded way of thinking about things, in open source and personal things alike. I’m thankful that we have people like you in open source communities to build better software and also to build better communities. I am lucky to have someone like you around. Thanks for being there always.

Lots of love.

What can I say? �� I am feeling overwhelmed. Thank you so much to whoever has sent me this bit of love!


L'articolo Thank you for your love <3 sembra essere il primo su Blogs from WikiToLearn.

Dear anonymous happiness sender,

I woke up this morning to your love message for the WikiToLearn community, sent through happinesspackets.io. The e-mail address used to send the packet is only read by a few people, so I am reposting this love for the whole community to enjoy. Here are the contents of the packet:

I feel totally overwhelmed, excited and very, very grateful. Thank you for caring. You people are just unbelievable. You are a bunch of craziest, most awesome and the most positive people I’ve ever met. You inspire me to give back to the community.

I wish I could express properly what I’m feeling right now.

Thanks for everything guys. Sending hugs, you crazy, amazing people!

What can I say, if not sharing the love for the amazing community that got together? Your words are beautiful and inspiring, and I personally feel extremely happy to have contributed, in my little part, to create such great vibes.

Dear anonymous sender, I do not know who you are, but lots of thanks and love to you too. ��

Love only grows if shared.


L'articolo WikiToLearn Happiness Packet received! sembra essere il primo su Blogs from WikiToLearn.

Could you tell us something about yourself?

My name is Marcos Ebrahim. I’m an Egyptian artist and illustrator specialized in children’s book art, having 5 years experience with children’s animation episodes as computer graphics artist. I have just finished my first whole book as children’s illustrator on a freelance basis that will be on the market at Amazon soon. I’m also working on my own children’s book project as author and illustrator.

What genre(s) do you work in?

Children’s illustrations and concept art in general or children’s book art specifically.

Do you paint professionally, as a hobby artist, or both?

Because I’m not a member of any children’s illustration agencies, associations or publishing houses yet, I’m now doing this work on a small scale as a freelancer. I changed careers to be an illustrator a few months ago, so I can’t call myself a professional yet. I hope to achieve that soon.

Whose work inspires you most — who are your role models as an artist?

Nathan Fowkes‘ works and illustrations. I found this illustrator and concept artist on a website that called him “the master of value and colour”. I was lucky engough to study online (an art program by Schoolism) under his supervision and learn a lot. However, I’m not a brilliant student ��

Other great illustrators and artists I like: Goro Fujita, Marco Bucci, Patrice Barton, Will Terry, Lynne Chapman, John Manders and many others. I always look forward to seeing their art works to learn from them.

How and when did you get to try digital painting for the first time?

About three years ago, when I was trying to use my new Wacom Intuos tablet for painting and drawing, practicing studies from the great Renaissance masters as fan art.

What makes you choose digital over traditional painting?

Let me describe it like this: “The Undo-Time Machine — the great digital button”. Beside the ability to make changes in illustrations easily, I found its benefit when I tried to work with authors and they asked me to make changes that I couldn’t have made in traditional painting without redoing the illustration from scratch.

How did you find out about Krita?

I used to surf Youtube for viewing Illustrations and artists demo their work. Then I heard about Krita as open source art software. So I decided to search more and found out that the illustrations made with it could be similar to my work, so I should devote some of my time to know more about it and try it. Then I searched out more learning videos on Youtube. Frankly, the most impressive and helpful one was a long video tutorial by the art champion of the Krita community, David Revoy, making a whole comic page from scratch using Krita. He showed the whole illustration process, as well as the brushes and tools he provides for others to use (thank you very much!).

What was your first impression?

I think the Krita program has a user-friendly interface and tools that become more familiar when I configure the shortcuts similarly to most popular other art programs. This make it easier to work without the need to learn many things in a short time.

What do you love about Krita?

I think the most wonderful thing is the brush sets and the way they look like real-world tools. In addition some other tools like the transformation tool (perspective) and the pop-up tool.

Also I can say that working with Krita is the first time that I can work on one of my previous sketches and achieve a good result (according to my current art skills) that I’m happy with.

What do you think needs improvement in Krita? Is there anything that really annoys you?

As I mentioned to the Krita team, there are some issues that we could call bugs. However, I know that Krita is in development and the great Krita team makes things better from one version to another and add new features all the time. Thanks to them and hoping that they will continue their great work!

What sets Krita apart from the other tools that you use?

I think that Krita, as open-source art software, could soon compete with commercial art software if it continues on this path (fixing bugs and adding new features).

If you had to pick one favourite of all your work done in Krita so far, what would it be, and why?

Frankly, I’ve only recently started to use Krita and I’ve finished only two pictures. One I could call an illustration, the other is the background of my art blog, trying to use the wrap tool to make a tiled pattern. You can see this in the screenshots.

What techniques and brushes did you use in it?

I prefer to make a sketch, then work on it adding base colors and adjusting
the lighting value to reach the final details.

Where can people see more of your work?

I add new works to my art blog once or twice every month or more
often, depending on the time I have available and whether I make anything


And also here:

Anything else you’d like to share?

All the best wishes to the great Krita team for continuing success in their
work in developing Krita open source software for all artists and all people.

April 09, 2017

This is not a GNOME vs Plasma comparison, this specifically for Ubuntu and its users, considering the innovative vision they had till now. Just very personal thoughs ordered by importance for Ubuntu success in my opinion.

1. Windows-like experience by default

The most important reason for me is that the new Ubuntu user generally was a Windows user. Plasma by default has a Windows-like look and feel: panel at the bottom with an icon to open a menu and search/launch applications and files, a task manager and a system tray. I installed Plasma to many Windows users during the years and they found it more intuitive than Ubuntu Unity and probably than GNOME 3. In fact I tried GNOME 3 many times but it took a while before I was able to understand the GNOME’s vision for workflow. It’s very interesting and innovative, but it’s imposed by default and you will learn how to use it well only if you want to do so or if you are a very experinced user of other particular UI. The Windows user that try Linux just want a working environment. I saw that Windows users that tried Plasma were satisfied from the first moment, start working and after a while (days, weeks) they customized their UI and explore new workflows, probably when they have free time and aren’t stressed by work.

2. Unity-like experience with one click

Who like Unity experience can easily get it from a fresh Plasma installation by using a Look&Feel package. There is already a package for that on KDE Store. Eventually, the Ubuntu installer could provide a choice at the end of the process asking which experience the user prefer (Windows-like/Plasma-default, Unity-like, Mac OS-like etc).

3. Simple by default, powerful when needed

KDE software, including Plasma and KDE Applications, is generally very simple and intuitive by default, but provides advanced features that user can easily discover with its own curiosity. Instead GNOME has a precise vision about minimalism, that means very elegant product but often also missing very important features for productivity.

4. Plasma Mobile

KDE is developing its alternative to Android with many tech things in common with Ubuntu Touch. Ubuntu enthusiasts’ experience with Qt and QML could be used in Plasma Mobile world. At the moment Ubuntu Touch apps can run in Plasma Mobile.

5. Convergence is the future

The original idea about convergence of UIs born in KDE. Canonical developed it with Ubuntu Touch and now Plasma Mobile and Kirigami are continuing that vision. Convergence is pursued also by Google and Microsoft and in the future it will be a very common feature. Smartphones becoming desktop PCs when plugged to keyboard, mouse and monitor, tablet becoming laptop, files and configurations shared across different form-factor devices are here. Plasma and Kirigami takes advantage of the best technologies for this purpose like Qt/QML and Wayland.

6. Kirigami apps that run everywhere

Let’s be honest: Plasma Mobile and others will not be real alternatives to Android in the short term. But being in the mobile world, on Android or iOS, is very important for every software manufacturer and in fact KDE litterally did a revolution with KDE Connect that improve the desktop experience with Android. But think also to apps like Nextcloud, both available on Linux desktop and Android that sync our files. To provide a better Plasma and KDE software experience we need this kind of companion apps on Android and iOS. Kirigami is here to provide a cross-platform UI framework for Linux Desktop, Windows, Mac OS, Android, iOS and Plasma Mobile.

7. Qt is not a Linux-thing only

Though Gtk could be a good product, its focus is on Linux desktop and it’s developed mostly for GNOME’s vision. KDE software uses Qt instead, that is one of the best products in the industry and it’s available on Windows, Mac OS, Android and iOS. While many developers prefer Gtk for their Linux apps, if the purpose is promoting FOSS we should open to other platforms and as I said, especially on Android and iOS because we currently don’t have a mobile alternative platform.

8. KDE Neon and its innovations

KDE Neon provides a new way to join development by providing a complete set of builds, including directly from git-stable and git-unstable repositories. Also, using Docker images of KDE Neon users are able to quickly test new features providing feedbacks or to hunt bugs. I find very useful to try a daily build to check if a bug was fixed before I report it.

9. Integration with KDE Store

KDE software, including Plasma and Applications, can download very different types of addons from KDE Store without visiting any Web page, directly from applications: Plasma widgets, Plasma themes, Freedesktop icons, Service Menus for Dolphins, skins for Yakuake and many many others. We all see the success of Google Play Store and Apple’s one, the KDE Store and OpenDesktop in general is a step forward hosting addons. KDE integrations for them is continously improving: also Plasma Discover, the KDE’s software center, can manage addons from the KDE Store.

10. Breeze

Very personal thought: Breeze theme looks more modern and it’s adopted also in non-KDE products, for example Breeze icons are now used in Libreoffice.

We are happy to announce the next release of LabPlot!

The concise list of changes is available in the changelog. In the following we describe the most important new features in more details.

Beginning with the previous release, LabPlot is available for the Windows platform. Now we further extend the support for different operating systems and starting with this release LabPlot will be available for Mac OS X, too. We’re providing a Mac OS X bundle in our download section.

LabPlot running on Mac OS

This is the very first release for Mac OS X and we consider it “experimental”. More time and polishing will be invested into this in future but we want to share this already now and to collect some feedback.

Two major contributions to this release were done during the “Google Summer of Code 2016” program last summer. Fábián Kristóf added the support for the FITS format. FITS is an open standard file format widely used in the scientific community to store structured as well as unstructured multi-dimensional data. It is now possible to import different data units stored in a FITS file into LabPlot’s data containers. The screenshot below shows the import dialog with a FITS file and a two-dimensional data array imported into the matrix container and the image preview of it:

FITS Import

One of the major features of the FITS format is the ability to store the metadata in human-readable headers. Such headers are stored in the file, in addition to the actual data, as key-value pairs in the ASCII format and provide additional information about the origin of the data, its size, used measurement devices, etc. Fábián implemented the tool FITS Metadata Editor that allows to inspect and to modify the metadata. This editor parses the metadata part of the selected FITS file only and shows all available headers in a tree view. Already existing key-value pairs can be modified or deleted, new pairs can be added. It is also possible to open and to edit more then one file at the same time.

FITS Metadata Editor

More screenshots are available in Fábián’s blog.

Prakriti Bhardwaj worked during GSoC2016 (blog ) on the Theme Manager for LabPlot which allows the user to quickly change the appearance of a plot and of all its curves. This selection together with the theme previews is available in the properties widget and in the context menu of the plot:

Theme Preview

There are 13 different themes available at the moment:

We continue to work on the support for different computer algebra systems via Cantor. In this release the support for Julia vectors and tuples in CAS worksheets (requires Cantor v. 16.12 or higher) was added. Thanks to the work done by Ivan Lakhtanov during GSoC2016 who added Julia backend to Cantor (check Ivan’s blog), it was an easy task to add Julia to LabPlot.

Similar to the previous release, we invested a lot of time into the data analysis functionality in LabPlot. The already available capabilities for data fitting were extended – many new pre-defined fit models like Gompertz, Weibull, Log-Normal, Gumbel distributions, etc. were added. The available fit-models are now grouped thematically in categories and a LaTeX-rendered preview of the mathematical function is shown for each pre-defined fit model.

To have more influence on the fit procedure, the fit parameters can be fixed now or constrained by some boundary conditions (lower and/or upper limits).

New algorithms for data reduction were added. These algorithms allow to greatly reduce the number of points in the curve to be considered without changing the appearance of the curve to much. There’re many algorithms known to achieve this and we implemented couple of them like Douglas-Peucker, Reumann-Witkam, etc.

To further close the gaps to LabPlot1.x (and other similar projects), numerical differentiation (up to the 6th order) and numerical integration (rectangular, trapezoid and Simpson methods) were implemented. Similar to other analysis functions, the user can control these new functions via different parameters and options.

Support for LaTex-typesetting in LabPlot was strongly extended. LabPlot allows now to enter complete LaTeX documents everywhere where LaTex-syntax is supported (text label on the worksheet, plot title, etc.). With this, the user can now use documents with specific header and numerous packages for LaTex.

In LabPlot 2.4 there is new configuration parameter which allows to use different LaTex engines (LuaLaTex, XeLatex, pdfLaTex, LaTex) – the user can decide which rendering path to use and can e.g. select XeLatex to use Unicode in LaTex.

Also, there is a runtime check now in the application to disable LaTeX typesetting if no LaTex installation and other required tools are found on the system.

Among other smaller new features (check the changelog to see the full list of changes) we want to mention the new presenter mode for worksheets which shows the worksheet in the full-screen mode:

Today the Kubuntu team is happy to announce that Kubuntu Zesty Zapus (17.04) RC is released . With this release candidate, you can see and test what we are preparing for 17.04, which we will be releasing April 13, 2017.

NOTE: This is a release candidate. Kubuntu pre-releases are NOT recommended for:

* Regular users who are not aware of pre-release issues
* Anyone who needs a stable system
* Anyone uncomfortable running a possibly frequently broken system
* Anyone in a production environment with data or work-flows that need to be reliable

Getting Kubuntu 17.04 RC:
* Upgrade from 16.10: run `do-release-upgrade -d` from a command line.
* Download a bootable image (ISO) and put it onto a DVD or USB Drive : http://cdimage.ubuntu.com/kubuntu/daily-live/20170408/

Please see Release Notes for more details, where to download, and known problems. We welcome help to fix those final issues; please join the Kubuntu-Devel mail list[1], just hop into #kubuntu-devel on freenode to connect with us or use the Ubuntu tracker [2]

1. Kubuntu-devel mail list: https://lists.ubuntu.com/mailman/listinfo/kubuntu-devel

2. Official Ubuntu tracker: http://iso.qa.ubuntu.com/

Springtime is here. So start planning for all the summer conferences. The KDE yearly summer conference, Akademy, takes place in the south of Spain from July 22nd to July 27th.

Akademy is a great opportunity for all community members to tell their fellow KDE-ers about the things they have been working on. It provides a friendly environment where people contribute to the wonderful projects of KDE.

We encourage everyone to give a presentation. You can register a presentation here.

Akademy 2017 Banner

Akademy 2017 Banner

April 07, 2017

More than 10 years ago, when I was a CC student, I don’t know how many times I created a bit of code (not the best code in the world, not the sanest, but it fixed a problem that I was having) and I would get the courage to send an e-mail to the project mailing list, they would think the idea was nice and then… I would throw the code into the trash because I was too afraid to send broken code or code that wasn’t perfect.

Before the fire age, when SVN was still used in the KDE repositories, I created patches for Amarok, for Ark, for K3b, for Juk, none of them had the light of the day shinning on their little faces. All of them had a premature death on my recycle bin, a few of them didn’t even bothered to cry before being deleted without mercy because of my adolescent impulses, and no, I’m not proud of that, I think that if I had the courage to send it those applications could be much better nowdays and I would have made a difference back then.

It really took me a while to realize that all code matters from small one liners that fixes a typo to huge amounts of code that fixes a really strange bug that only you appear to have, or staying on a irc channel (or gitter, for those new fancy kids) and answering questions or having questions to be answered… Remember that project members don’t bite, and if they do you can always bite back.

I don’t know how many times I’v send a 2 – to – 3 lines patch to $project and the maintainer thanked me for doing that, because it was something that always bothered him but at the same time it was such a small thing that he never had the time to stop doing the more important thing that he was doing at the time to actually stop and look a it. And it felt good.

Always be Brave

Always be brave

If you are a professor, if you represent an university, please adopt a software, this will really lower the entry bareer for your students as they would need to work on the app for a few semesters (and if I may say so, pick one of KDE Edu or KDE Games applications, they usually small and good for a student to work with), but if you are just somebody that would like to start contributing with anything:

  • Choose a project that you like
  • Download the code
  • Compile the application
  • Choose anything easy to be your first fix
  • Create a Fix for that
  • Let it sink for a few hours and feel the inner peace
  • Go outside, see a movie, go on a date.
  • When you are back, take a *deep breath*
  • Send the patch
  • it’s ok if you faint later

Really, it doesn’t matters if it’s a patch that only contains one line or two, what it matters is that you had to stop what you where doing to fix anything in an application without expecting money to do so, for the sake of your own knowledge and also to help others that could be happy because a silly bug got fixed.

Do you also know that the KDE project has more than 500 applications and libraries that could need a bit of help?



A week after the alpha release, we present the beta release for Krita 3.1.3. Krita 3.1.3 will be a stable bugfix release, 4.0 will have the vector work and the python scripting. The final release of 3.1.3 is planned for end of April.

We’re still working on fixing more bugs for the final 3.1.3 release, so please test these builds, and if you find an issue, check whether it’s already in the bug tracker, and if not, report it!

Things fixed in this release, compared to 3.1.3-alpha:

  • Added the credits for the 2016 Kickstarter backers to the About Krita dialog
  • Use the name of the filter when creating a filter mask from the filter dialog instead of “effect”
  • Don’t cover startup dialogs (for instance, for the pdf import filter) with the splash screen
  • Fix a race condition that made the a transform mask with a liquify transformation unreliable
  • Fix canvas blackouts when using the liquify tool at a high zoom level
  • Fix loading the playback cache
  • Use the native color selector on OSX: Krita’s custom color selector cannot pick screen colors on OSX
  • Set the default PNG compression to 3 instead of 9: this makes saving png’s much faster and the resulting size is the same.
  • Fix a crash when pressing the V shortcut to draw straight lines
  • Fix a warning when the installation is incomplete that still mentioned Calligra
  • Make dragging the guides with a tablet work correctly

Note for Windows Users

We are still struggling with Intel’s GPU drivers; recent Windows updates seem to have broken Krita’s OpenGL canvas on some systems, and since we don’t have access to a broken system, we cannot work around the issue. For now, if you are affected, you have to disable OpenGL in krita/settings/configure Krita/display.


Note for Windows users: if you encounter crashes, please follow these instructions to use the debug symbols so we can figure out where Krita crashes.


A snap image for the Ubuntu App Store is also available. You can also use the Krita Lime PPA to install Krita 3.1.3-beta.1 on Ubuntu and derivatives.


Source code


For all downloads:


The Linux appimage and the source tarbal are signed. You can retrieve the public key over https here:
. The signatures are here.

I am pleased to announce that Qt 5.9 Beta is now released. Convenient binary installers are available for trying out the cool new features coming in Qt 5.9. With this release we are adjusting the release process to make it easier for users to check out the upcoming release conveniently using the online installer. 

Qt 5.9, scheduled to be released at the end of May, completes the work started with Qt 5.7 and 5.8 to take Qt 5 to the next level. Compared to Qt 5.6 LTS we have added a lot of new features such as fully leveraging C++11, a new configuration system, new graphics architecture, a new set of Qt Quick Controls, convenient support for Wayland multi-process, Qt 3D, and many, many more. We have also worked hard to improve the performance to be even better across the board, but especially on embedded hardware. Our target is that a Qt application running on Qt 5.9 not only has more features to choose from, but also runs with better performance and increased maturity compared to an earlier version of Qt.

With Qt 5.9 we are slightly adjusting the release process of Qt. After the Beta that was released today we will push out multiple new Beta N releases using the online installer. With the new approach it is easier than before for users to test the features and provide feedback (via bugreports.qt.io). During the beta phase we expect to have new Beta N releases with 1-2 weeks intervals. When the maturity has increased sufficiently we will create a release candidate and then the final release of Qt 5.9.0. These will be made available directly via the online installer, we are not planning publish separate blogs for the subsequent beta releases and release candidates. In addition to binaries, source packages of each beta release are of course also available for those who prefer to build themselves.

I hope many of you will install the Qt 5.9 Beta release(s), test and provide us your feedback to complete Qt 5.9. For any issues you may find, please submit a detailed bug report to bugreports.qt.io (please remember to mention which beta you found the issue with). You are also welcome to join the discussions in the Qt Project mailing listsdeveloper forums and of course we encourage you to contribute to Qt. You may also want to check out the list of most important new features in Qt 5.9, as well as the new features in Qt 5.8 and new features in Qt 5.7 – in case you are still using Qt 5.6 LTS.

If you do not yet have the Qt online installer, get it from the Qt Account or from the Qt Download page.

The post Qt 5.9 Beta Released appeared first on Qt Blog.

April 06, 2017

Icemon 3.1.0 release

More than one year after the 3.0.1 release, here's a new minor release of Icemon: 3.1.0.

Lots of bug fixes and small code refactorings, but also a few feature additions made it into this release.

Icemon 3.1.0 release

Here's the changelog for the 3.1.0 release:


- Summary view: Multiple improvements (#23)
    - Displays average time for each submitted jobs
    - Added display of average build time for finished jobs
- Added scheduler hostname option (#27)


- Fixed summary view stateWidget color not updated correctly (#23)
- ListView: Sorted file sizes correctly (643abfbbdeed806aa5a08f0c1cfcdaf7ba79d748)
- Fixed filtering in detailed host view (#26)

Internal Changes:

- Lots of cleanups, more strict compiler flags, etc.

Get it:

$ git clone https://github.com/icecc/icemon 
$ git checkout v3.1.0


KDE Project:

Binary keyboard
Surprisingly not enough

A brief note: If you're a developer or user of input methods in the free desktop space, or just interested in learning about "How does typing Chinese work anyway?", you might be interested in a discussion we're now having on the plasma-devel mailing list. In my opening mail I've tried to provide a general overview about what input methods are used for, how they work, who they benefit, and what we must do to improve support for them in KDE Plasma.

Bringing high-quality text input to as many language users as possible, as well as surfacing functionality such as Emoji input and word completion in a better way, is something we increasingly care about. With the situation around complex text input on Wayland and specifically KWin still in a state of flux and needing-to-crystallize, we're looking to form closer ties with developers and users in this space. Feel free to chime in on the list or hang out with us in #plasma on freenode.

Some things will never change on Programming classes in universities: There will always be students crying to understand pointers, there will always be people going to stackoverflow hoping that somebody would do their homework, Every semester the students would start thousands of lines for their conclusion project and those lines ould probably go to the trash bin as soon as the semester ends. This shouldn’t be like that, this really shouldn’t be like that.

While I was at the universities I was mostly focused on trying to do things that mattered, but every semester I had to create a new and improved “Library book rental service”, “Car rental service”, or “Payment system”, the differentes where that one runned on command line, one on java/swing, other on the web. but the systems where basically the same, and the code always went into the trash because that was nothing I was proud of (and there was more 10 projects virtually equals to mine created by my fellow colleagues).

There’s a rise of technology universities in the world as we don’t see in a long time. And it’s easily undertandable, as everything now has to be “smart”, from water bottles (that will tweet you when they need a refill)  to can openers (that will tweet your friends when you open a can, if you have any), Eveyrthing is connected and everybody is trying the new trends using the fancy new words created by the marketing team. All of the students around the world are doing exactly the same algorithms with  exactly the same semester projects, just changing the language that they are writting the application on.

But there are *tons* of softwares that could really improve if a student or a university could adopt them for a semester and work on top of it, let’s get KDE Edu and KDE Games for an example, There are really complex projects there like KStars and Marble, I’m not crazy to ask for a first or second semester to look into those softwares unless they are genius, but there’s also a lot of small and easy to develop software that we would love to have some help:

After two months of intensive reviews, discussions, fixes, and stripping down the initial commit, feature by feature, to make it acceptable, I am happy to announce that the first QStringView commits have landed in what will eventually become Qt 5.10. Even the docs are already on-line.

This is a good time to briefly recapitulate what QStringView is all about.

continue reading

The post QStringView Diaries: The Eagle Has Landed appeared first on KDAB.

April 05, 2017

I used to use the IRC bouncer at bnc.kde.org to keep a constant presence for my IRC nickname, but an IRC bouncer has several limitations that always annoyed me. Then I discovered that Matrix has a built-in IRC bridge, and I’ve been using it ever since, shutting down my IRC bouncer account. Basically you use the Matrix protocol as IRC bouncer and you use any Matrix client as if it were an IRC client.

You can find everything you need to know here: https://community.kde.org/Matrix

You may be interested in Matrix if:

  • You use an IRC bouncer but you’d like something simpler to set up and with more features.
  • You’d like to use an IRC bouncer but you never did because it was too difficult to set up one.
  • You use the IrcsomeBot Telegram bot but you’d like a “native” bridge with IRC (for example, let people actually /query you!).

I’m a good procrastinator, I really am. Not something that I should feel proud, and I’m not. But I’m a good procrastinator. And by being a procrastinator I mean that I can think that something is utterly hard to make, and spend three months looking for an excuse not to do that, and suddenly one day I have an idea and finish what I tried for three months without success in one hour or less.

The story today is about Subsurface, the free software that I most dedicated myself on. the class MainTab is a godlike class that holds all of the main area tabs, and being a godlike class it has too much information and too much entanglement. I know what I had to do: kill it, kill it with fire. And then I started…

A hundred patches later and it still loocked like more hundred patches to go. I entered on procrastination mode again, didn’t touched that for more than a month trying and waiting for a light to come from heaven and illuminati me.

Yesterday the light came, and I nuked the whole branch ( hint: never do that in a job interview, I lost a job once because I nuke trial git branches when I reallize how to do something in the correct way), and started from scratch. One hour later and three patches I was done. the Utterly complex thing that I didn’t know how to solve was just in my head.




Older blog entries

Planet KDE is made from the blogs of KDE's contributors. The opinions it contains are those of the contributor. This site is powered by Rawdog and Rawdog RSS. Feed readers can read Planet KDE with RSS, FOAF or OPML.