Summer, sun and… a new release of OpenTodoList!

We hope most of you enjoy some free time outside, relaxing and getting away from all the stress we usually have around us. For us, we were a bit busy and hence accumulated a bit of delay for this release. And hey, it’s really a special release! You wonder why?

OpenTodoList is turning 10 years on the 25th of July! 🎉

10 years - in terms of software, this is really a lot. And looking back, it was quite a journey! OpenTodoList started as a project to discover the newly release QML tooling within the Qt framework at that time. Initially started with a skeuomorphic design, you wouldn’t recognize the app again nowadays. Cannot believe it? Here’s some examples 😉

This is how OpenTodoList looked like 10 years ago

We want to take the chance to say a big thank you to everyone supporting us and the app until here! Be it through feature requests, bug reports, donations or also lending us an ear when we had issues and difficulties - all of that kept the development of the app going. And we’re not getting tired of it; the issue tracker is well filled so chances will continue to come for quite a while.

Speaking of changes… you surely are curious what this release provides, aren’t you? So, let’s have a deeper look into that!

Changelog

rpdev/opentodolist#515: Recurring Sub-Tasks

OpenTodoList allows most items to have a due date. And on top, you can set recurrence patterns, such that an item repeats e.g. every week or every 15 days.

But, what happens with child items within such a recurring item? For example, if you set a todo list to recur, what is with the contained todos (and their sub-tasks)? The simple answer in the past was: Nothing!

The “parent” item would be scheduled again for another date, but the children would remain marked as done.

With this release, this changes - so when an item recurs, all of its child items will get reopened magically. This should make recurrence on complex item structures way more useful!

rpdev/opentodolist#622: Improved Recurrence Editor

Recurrence is a theme for this release. We also took the chance to refactor the recurrence editor a bit - it should be way easier to control now, especially on large screens you don’t have to aim at tiny icons anymore to trigger an action!

This might also serve as a blue print for some further refactoring of the user interface in other parts of the app.

rpdev/opentodolist#620: Fix - Recurrence Mode not always applied correctly

The usual bug fixing cannot be missed, of course! There was in fact a bug - in the recurrence editor, every second time one opened recurrence mode dialog, the dialog would jump between the actually selected mode and the default one.

While this was not critical (the mode was applied correctly, so no harm done), it still was annoying and hence we’re happy that this one got fixed!

rpdev/opentodolist#621: Prevent accidental marking of future items as done

When a recurring item is marked as done, it actually is not getting closed but OpenTodoList basically updates the next effective due date for it. But, what happens if you try to mark a future instance of an item as done?

In the past, OpenTodoList would simply have allowed you to do so, rescheduling the item even farther into the future. So, users might accidentally close items and schedule them for later! 😱

Good, that this release brings relief here! When an item is schedule for the future and not yet due in the current scheduling interval, the app will show a short warning and you have to explicitly agree to close that future instance of the item (which might - after all - still be a use case here and there).

rpdev/opentodolist#623: Semi automatic closing of items when all children are done

Todo lists contain todos. Todos in turn can have sub-tasks that further structure the work that needs to be done to get that item “completed”. But what happens once e.g. all sub-tasks within an item are closed?

Until now, the answer was a clear: Nothing.

Starting from this version on, the app will - once all items within a container are marked as done - display a short tooltip which you can tap to also close the parent item. Of course, if that container still shall remain “undone”, you can simply ignore this message, but it can speed up your daily workflow a bit where it fits.

rpdev/opentodolist#619: Remove no-translations workaround on Windows

Up to some techy stuff: We had to introduce a workaround that avoided Qt’s internal translations to be shipped with the app on Windows. That workaround could be removed in that release 😉

rpdev/opentodolist#586: Use of shared macOS runners to build the app

While not exactly user centric, this is an interesting one: GitLab, the platform where OpenTodoList is hosted and mainly developed, also provides us the resources for building the app for most platforms. However, that build platform is rather Linux centric - while one could add own runners to their projects there, GitLab itself didn’t provide anything beyond Linux for a long time.

Some time back that changed and they introduced shared macOS runners. So we decided to switch to these to build the app for both macOS as well as iOS.

The clear advantage: We can always build 🛠️

Sounds too technical? Well, until now we had a macBook sitting somewhere on which any build had to run. And if this hardware was not available, build pipelines would simply start to fail. Not ideal, right? This is a thing of the past now!

rpdev/opentodolist#585: Use of shared Windows runners to build the app

Going into the very same direction is this change: We also use the shared Windows runners for building the Windows version of OpenTodoList now. Here, the story is a bit different, though.

We were perfectly able to build the app from the Linux containers in GitLabs build farm. However, the underlying technique to get this done - using cross compilation from Linux to Windows - sometimes broke. This was also the reason why we worked on this story for this particular release: The Windows build once again broke, with us unable to workaround it (except with quite some effort).

As a result, we now natively build on Windows. This allows us to use the “vanilla” Qt binaries from the Qt Company - which should stabilize things a bit as well.

👉 Please note that due to this change, we had to drop support for Windows 32bit builds! This shouldn’t be a blocker for most users and we really hope that meanwhile most of you have a 64bit capable Windows installation in use. If not, feel free to open an issue so we can investigate how to work around this. However, we feel that with Linux having abandoned 32bit in most use cases as well, it is time to sunset this variant of the app for Windows as well.

rpdev/opentodolist#618: Better icon for saving of notes

Finally, a little but probably welcome change: If you edit the notes of an item, you probably realized the round button which can be used to finish editing the text, right? Previously, we had a rather strange icon in use there, which most people associated with a kind of download function. We used this release to improve there and pick an icon which better reflects the function of that button!

Downloads

  • Please find the download links for major platforms on GitHub.
  • For Android, the release is available via Google Play.
  • For iOS, the release is available via the App Store.
  • If you use snap, you can install the app from the snapcraft.io.
  • If you use flatpak, you can install the app from Flathub.
  • For Arch based Linux distributions, you can install the app from AUR.

Known Issues

There is a minor known regression with the Qt6 based build of the app when running on Linux with Wayland. Reordering items via drag and drop works, but you sometimes have to click somewhere (e.g. the tool bar) to re-enable hover for the items after such a drag and drop operation. This has been reported as a bug against Qt in their bugtracker. Usually, you can start the app passing it the -platform xcb option to force using X11/XWayland (which does not show the same symptoms).

Sometimes it can be so fast…

Just a few days after v3.44 has been released, some mindful user reported a really annoying bug in that release. As this bug can really be a killer for a lot of use cases, we’re pushing out a hot fix release. So, here we go:

Changelog

rpdev/opentodolist#616: Tags not showing up in the sidebar and when adding tags to items

Due to some refactoring work, the functionality to properly read back the tags used within a library got broken. This had two implications:

  • First of all, the tags would no longer show up in the sidebar, hence, making tags on top level items rather useless.
  • And second, when adding tags to an item, the existing tags would no longer be available for pre-selection.

This bug is fixed and on top we extended the testing a bit to avoid this to happen again.

Downloads

  • Please find the download links for major platforms on GitHub.
  • For Android, the release is available via Google Play.
  • For iOS, the release is available via the App Store.
  • If you use snap, you can install the app from the snapcraft.io.
  • If you use flatpak, you can install the app from Flathub.
  • For Arch based Linux distributions, you can install the app from AUR.

Known Issues

There is a minor known regression with the Qt6 based build of the app when running on Linux with Wayland. Reordering items via drag and drop works, but you sometimes have to click somewhere (e.g. the tool bar) to re-enable hover for the items after such a drag and drop operation. This has been reported as a bug against Qt in their bugtracker. Usually, you can start the app passing it the -platform xcb option to force using X11/XWayland (which does not show the same symptoms).

Hi everyone!

First of all a Happy Easter to you! 🐣

Yes, we are again a bit late for the next release of your favorite Todo List and note taking app, but unfortunately, I got hit by a bad cold, followed by Corona, so I think this should be excuse enough. But hey, better late than never! So, here comes the list of changes that made it into this release of OpenTodoList - and what should I say? While the list was rather short for the previous release, this one includes just the more of them 😉

Changelog

rpdev/opentodolist#614: Fix the Arch Linux Build

The previous release broke - due to its many under-the-hood changes - the build of the app on Arch Linux (and friends). More concrete, building worked fine, but after installing, the app was missing some runtime libraries so it simply would not start.

Well, fixed ✅

rpdev/opentodolist#548: Improve Speed of Cache Queries

OpenTodoList uses a cache to access the items in your libraries. If you are into these kinds of topics, its somehow similar to a database system, just without an actual DB running in the background.

In this release, we improve the speed of queries run against the case to retrieve items from it. This should greatly reduce the time needed to completely render pages, especially on older devices with slow I/O performance 🐌

rpdev/opentodolist#607: Crash on Android when deleting all completed todos

Another rather nasty bug: On Android, when deleting all completed todos within a todo list, this would crash the app. What to say… fixed as well ✅

rpdev/opentodolist#610: Monochrome System Tray Icon

If you run the app on macOS, you might have noticed it fell out a bit - visually, of course. It used to use a colorful icon for the system tray. Here as well, the correct tense is the past tense, because we now default to using a monochrome style icon instead. On other platforms, we still use the colored one by default, however, regardless of where you run the app on, you can always select explicitly which style you want it to use.

rpdev/opentodolist#575: Fix several Markdown rendering issues

As the title suggests: There were several issues rendering Markdown content in the app. We hopefully got most of them, fixing them by switching to use Qt’s internal Markdown rendering as well as using another component to render the generated HTML.

We hope this should greatly improve the user experience without breaking existing Markdown documents!

rpdev/opentodolist#609: Remove useless close button in settings

There was a close button in the settings page - however, it simply didn’t work (and frankly, we nowhere else use a close button to “go back” in the page stack). So, in the end we simply removed it 🚮

rpdev/opentodolist#596: The sync sometimes hangs

After the previous update, we noticed that under certain circumstances the app might hang during a sync. The only way to get out of that was to quit the app and restart it.

This is fixed now by introducing a sync timeout - once we detect that no more data is transferred for some while, network requests and cancelled. So, this annoying bug should be a thing of the past!

rpdev/opentodolist#608: Bad Spanish Translations

There were some bad Spanish translations - thanks to the great users out there reporting and letting is know!

If you, too, find strangely translated parts within the app, feel free to report these as well or - even better - head over to POEditor and lend us a hand extending and fixing translations 😉

rpdev/opentodolist#544: Improvements of Windows installer

We put some love into the Windows installer of the app. In particular, the update procedure got way better (most importantly, we no longer open the uninstaller from within the installer to actually run the update).

rpdev/opentodolist#584: Quick Solutions Buttons in Problems View

Sometimes, e.g. due to transient network errors, a sync operation might fail. OpenTodoList reports such incidents as problems, which you can review in the user interface. To make “solving” such issues even easier, we introduced “Quick Solutions” buttons in the problems view:

For example, if a sync issue occurred, you’ll now find a “Retry” button right on the reported problem, which you can hit to simply retry running the sync. Before, you had to click the problem report to open the affected library and manually start a new sync from there.

rpdev/opentodolist#581: Path to a library in the user interface

Sometimes its necessary to review the folder structure of a library as is stored on disk.

You’ll now find a new option “Open Library Folder” in the menu of the library page, which will open the file explorer in the folder of the library.

Note that this is considered “expert knowledge”, so only use this to check out the structure of the library on disk but don’t try to manually edit any files in there, as this might make reading these files within the app impossible and hence cause data loss.

rpdev/opentodolist#481: Improved moving of todos

You might already have used the “Move Todo” functionality of OpenTodoList. This function allows you to move a todo into another todo list.

However, this only can be done within the same library. But, there was a bug in the appropriate dialog, so we always showed all available todo lists across all libraries as possible “targets” for the move operation. This - obviously - is nonsense. So, fixed in this release ✅

rpdev/opentodolist#537: Unstable unit test

A bit techy, but: There was a unit test that occasionally would fail on macOS for unknown reasons. We tried to improve and stabilize this test (which is of course of no further relevance to users of the app, but still an important fix for those who have to develop OpenTodoList 😉).

rpdev/opentodolist#530: Shared base class for SynqClient-based classes

Last but not least, we did some refactoring of the code: Namely, we introduced shared base classes for those classes in the code, that use the SynqClient library for running the sync operation. Again, this is nothing directly visible to users of the app, but it makes the code easier to maintain and hence saves us valuable time in the future.

Downloads

  • Please find the download links for major platforms on GitHub.
  • For Android, the release is available via Google Play.
  • For iOS, the release is available via the App Store.
  • If you use snap, you can install the app from the snapcraft.io.
  • If you use flatpak, you can install the app from Flathub.
  • For Arch based Linux distributions, you can install the app from AUR.

Known Issues

There is a minor known regression with the Qt6 based build of the app when running on Linux with Wayland. Reordering items via drag and drop works, but you sometimes have to click somewhere (e.g. the tool bar) to re-enable hover for the items after such a drag and drop operation. This has been reported as a bug against Qt in their bugtracker. Usually, you can start the app passing it the -platform xcb option to force using X11/XWayland (which does not show the same symptoms).

Hi everyone!

First of all: Happy new year to everyone! 🎉 I really hope you all had a great start into 2023 - let is be a wonderful and peaceful year!

What could be better than getting into the new year with a new release of your favorite todo list and note taking app? Right, so, let’s have a look at what this version brings (disclaimer: it might look disappointing at first, but this release is huge):

Changelog

rpdev/opentodolist#541: Migrate the app to Qt6

Yes, you see correctly - this is the one and only issue that made it into this release. And well, it was in fact quite some work getting there.

Qt is the framework OpenTodoList is built upon. It allows us to build the app for all of the operating systems and platforms we currently support. Without that, we wouldn’t have the resources to support the app on such a wide variety of platforms.

Up to now, OpenTodoList was based on the previous release of Qt - version 5.15. However, the v5 line is no longer developed. So in order to benefit from further development, we needed to migrate to the new v6 version line. This release of OpenTodoList is the first which is built again Qt 6.

With that, we lay the foundations for further great development of the app. But what about you (as a user)? In fact, by migrating, we also pull in all of the interesting things that happened in Qt between v5 and v6. For example:

  • On Android, the app now follows the system color scheme automatically.
  • On iOS, positioning the text cursor in text inputs works as expected (e.g. when using swipe on the spacebar to move the cursor).
  • On macOS, you can now keep a key (e.g. A) pressed to get a list of possible alternatives (e.g. Umlauts or accented versions of the letter).
  • Generally, Qt6 supports other graphic backends than OpenGL. This is particularly interesting on Windows, where OpenGL is often a problem - here, rendering can be done via DirectX, which should work more stably on a larger set of devices.

We tried to thoroughly test the app before the release, however, such a large change always brings the chance of regressions (also see the known issues section at the end of the update). So - for this release more than any other - please report any new issues you encounter in our bug tracker. Thanks a lot! 😄

Downloads

  • Please find the download links for major platforms on GitHub.
  • For Android, the release is available via Google Play.
  • For iOS, the release is available via the App Store.
  • If you use snap, you can install the app from the snapcraft.io.
  • If you use flatpak, you can install the app from Flathub.
  • For Arch based Linux distributions, you can install the app from AUR.

Known Issues

There is a minor known regression with the Qt6 based build of the app when running on Linux with Wayland. Reordering items via drag and drop works, but you sometimes have to click somewhere (e.g. the tool bar) to re-enable hover for the items after such a drag and drop operation. This has been reported as a bug against Qt in their bugtracker. Usually, you can start the app passing it the -platform xcb option to force using X11/XWayland (which does not show the same symptoms).

Hi everyone!

It’s October again, for some of us this means Halloween is right ahead 🎃 And well, another thing is long overdue: Another release of OpenTodoList! Let’s check out the list of changes that made it into this release!

Changelog

rpdev/opentodolist#520: Remember the last opened item

This is a really welcome usability enhancement to the app: If possible, OpenTodoList now remembers the last item that was open between restarts. This is also true if the item is e.g. a todo - in this case also the parent todo list will be opened on restart.

rpdev/opentodolist#576: Fix - return button not responsive when an editor is open

This is a litte regression that sneaked in during one of the last releases: when a notes editor was open in a todo page, it was not possible closing the page unless the editor was closed explicitly. On the other side, when the notes editor was open on the todo page, going back would close the entire page, instead of just closing the editor. Both of these issues are now thankfully gone 😊

rpdev/opentodolist#577: Use the system browser for the Dropbox login on iOS and Android

On both iOS and Android, we used to use an embedded web view to let the user sign in to Dropbox when adding an account. This - however - is actually forbidden (actually due to restrictions by Google, because Dropbox allows signing in using your Google account). So starting with this release, we now also use the system browser on these two platforms for the login.

rpdev/opentodolist#565: Properly set window icon on Wayland

On a totally different page: OpenTodoList also runs natively on Wayland/Linux. However, the window icon (and hence also the icon in the taskbar) was not correctly set and hence the app would be represented using a generic icon instead. That’s definitely something we had to fix 😉

rpdev/opentodolist#536: Fix connection to the background service in the iOS simulator

This is rather a developer thingy, but still important for us: Previously, the app would not properly work within the iOS simulator - which makes debugging on this platform not necessarily easy. We fixed this now, so from now on, testing and debugging for iOS should be way simpler!

rpdev/opentodolist#549: Fix a crash when using the back button on Android

Another crash we fix with this release: Previously when using the back button on Android, the app would close/crash completely. Now, fixed as well ☑️

rpdev/opentodolist#556: Increase icon size

This is a little usability thing - we slightly increased the sizes of the icon tool buttons, which should make using the app more comfortable, especially on systems with a higher pixel density.

rpdev/opentodolist#354: Upload to the macOS app store

On macOS, we prepared uploading the app to the App Store. We still have to give it a try, but after all, this could be the first version that is available via the app store!

rpdev/opentodolist#546: Update notarization on iOS

Another developer thing, but still necessary to implement: We updated the way the app is notarized on Apple systems. This step was required as the previous method is going to be deprecated rather soon.

Downloads

  • Please find the download links for major platforms on GitHub.
  • For Android, the release is available via Google Play.
  • For iOS, the release is available via the App Store.
  • If you use snap, you can install the app from the snapcraft.io.
  • If you use flatpak, you can install the app from Flathub.
  • For Arch based Linux distributions, you can install the app from AUR.

Known Issues

There are currently no known issues. If you encounter any issues, please file a bug report in the bug tracker.