July/August KDE PIM summary blog post

Volker Krause vkrause at kde.org
Thu Aug 25 16:27:03 BST 2022


Hello everyone,

it's time for the bi-monthly blog post again :)

If you have contributed in July or August, a summary of your most
noteworthy changes would be helpful, bonus points for corresponding
screenshots or links to already existing blog posts. If you noticed something
noteworthy during the past two months, feel free to add that as well of
course!

To help refresh your memories and to make sure we aren't missing anything
important, there's two files attached here, an auto-generated detailed
changelog (this tends to be 30-50% of the commits, using David F's changelog
scripts for KF5 releases), and basic commit stats for the PIM repositories.

Additionally, we need help with compiling, editing and eventually publishing 
the blog post. Ideally this rotates between a number of people so that 
everyone has to do that only once per year or so.

Carl did the last one (https://carlschwan.eu/2022/07/04/kde-pim-in-may-and-june/), who wants to do this one?

Thanks for your help!
Volker
-------------- next part --------------
      1 Alfred Persson Forsberg_cat at catcream.org
      1 Andreas Sturmlechner_asturm at gentoo.org
      1 Christophe Giboudeaux_christophe at krop.fr
      1 Jiří Paleček_jpalecek at web.de
      1 Justin Zobel_justin.zobel at gmail.com
      1 Krzysztof Nowicki_krissn at op.pl
      1 Luca Beltrame_lbeltrame at kde.org
      1 Luca Weiss_luca at z3ntu.xyz
      1 Nathan Programmer_nathan at distant.land
      1 Yuri Chornoivan_yurchor at ukr.net
      2 David Faure_faure at kde.org
      2 Ömer Fadıl Usta_omerusta at gmail.com
      3 Marius P_nmariusp1 at gmail.com
      4 Ahmad Samir_a.samirh78 at gmail.com
      5 Friedrich W. H. Kossebau_kossebau at kde.org
      9 Glen Ditchfield_GJDitchfield at acm.org
     10 Andre Heinecke_aheinecke at gnupg.org
     13 David Jarvie_djarvie at kde.org
     19 Nicolas Fella_nicolas.fella at gmx.de
     23 Albert Astals Cid_aacid at kde.org
     23 Heiko Becker_heiko.becker at kde.org
     24 Claudio Cambra_claudio.cambra at gmail.com
     28 Carl Schwan_carl at carlschwan.eu
     96 Volker Krause_vkrause at kde.org
    227 Ingo Klöcker_dev at ingo-kloecker.de
    773 Laurent Montel_montel at kde.org
Committer: 26
Total: 1271
-------------- next part --------------
### Akonadi #

* use KF_INSTALL_TARGETS_DEFAULT_ARGS
* Use Qt:: directly
* Remove unused forward declaration
* KMessageBox::sorry is deprecated in kf5.97
* Use std::cout not std::err for information
* Fix mem leak
* Add clearCacheDone signal
* Add i18n
* Add job for clearing akonadi collection cache
* Move CalendarSupport::TagCache and tag color convenience methods here
* Fix SQL query generation with Qt6
* comment code for the moment in qt6 for making it build



### KCalendarCore

* Fix nesting of update()/updated() calls
* Deprecate deletion tracking support in CalFormat::fromString
* Add plugin loader for KCalendarCore::CalendarPlugin
* Don't drop custom properties with non-text value types


### KHolidays #

* Turn HolidaysRegionsModel into a table model
* Use non-deprecated API unconditionally everywhere
* Implement deprecated API by calling the new one
* Make rawHolidays() with category filter also work with seasonal holidays
* Actually implement HolidayRegion::rawHolidays()
* Actually include seasonal holidays in rawHolidaysWithAstroSeasons()
* Add methods to check for polar days/nights
* Fix reporting invalid sun event times


### Syndication

* Don't duplicate headers between cpp/.h files
* Require passing tests for the CI to pass


### KMime #

* use KF_INSTALL_TARGETS_DEFAULT_ARGS
* Use Qt:: directly


### KIMAP #

* use KF_INSTALL_TARGETS_DEFAULT_ARGS
* Use Qt:: directly
* compile without qt 5.15.2 deprecated


## ksmtp

* use KF_INSTALL_TARGETS_DEFAULT_ARGS
* Use Qt:: directly


### KDAV

* Stabilize multi-fetch test
* Use a struct instead of QPair


### KLDAP #

* use KF_INSTALL_TARGETS_DEFAULT_ARGS
* Use Qt:: directly
* We depend against kf5.96
* Portaway from ERR_SLAVE_DEFINED


## kpimtextedit

* use KF_INSTALL_TARGETS_DEFAULT_ARGS
* Use Qt:: directly
* Show headers in qtc6
* const'ify pointer
* Const'ify pointer
* Show headers in qtc6


### Akonadi Mime #

* use KF_INSTALL_TARGETS_DEFAULT_ARGS
* Use Qt:: directly


### Akonadi Contacts #

* use KF_INSTALL_TARGETS_DEFAULT_ARGS
* Use Qt:: directly
* Show headers in qtc6
* KMessageBox::sorry is deprecated in kf5.97


### Akonadi Calendar #

* use KF_INSTALL_TARGETS_DEFAULT_ARGS
* Use Qt:: directly
* Remove the meanwhile unused deprecated loading state API
* Fix crash when opening e-mail with calendar invitation
* Condense occurrenceForAlarm early returns and add check for null incidence ptr
* Fix crash when using QString as KConfigGroup name, use C Char array from start
* KMessageBox::sorry is deprecated in kf5.97
* Use the new KCalendarCore::Calendar loading state API
* Fix crash with reminder-daemon when reminder dismissed as notifications are being iterated over
* Add an environment variable to disable Akonadi auto-launching
* Add Akonadi KCalendarCore platform calendar plugin
* Prevent crashing from null AlarmNotification pointer
* Fix crash when clicking on dismiss, sometimes


### Akonadi Notes #

* use KF_INSTALL_TARGETS_DEFAULT_ARGS
* Use Qt:: directly


### Akonadi Search

* use KF_INSTALL_TARGETS_DEFAULT_ARGS
* Use Qt:: directly
* Show headers in qtc6


## libkdepim

* use KF_INSTALL_TARGETS_DEFAULT_ARGS
* Use Qt:: directly
* KMessageBox::sorry is deprecated in kf5.97
* Readd linux-qt6.yml
* Fix show headers in qtc6


## kidentitymanagement

* use KF_INSTALL_TARGETS_DEFAULT_ARGS
* Use Qt:: directly
* Show headers in qtc6


## pimcommon

* Remove some widget support in translator
* Clear comboboxbox before to fill it
* Make sure that all variables is not empty
* Add debug
* Load engine settings / refresh it
* Save/load engine settings
* Load settings
* init language
* Prepare to implement switch engine
* Add configure button
* Rename files/class
* Use debug logging
* Fix layout
* Fill combobox
* Fix resize translator widget
* Continue to implement engines
* Improve engine
* Continue to implement configure dialog
* Move translator engine in own directory
* Move configure dialog here to avoid duplicate code
* Export translatorenginebase.h
* Continue to implement yandextranslator
* Emit translateDone
* Allow to select specific translator
* initialize variable in header
* Add missing Q_EMIT
* Prepare to add yandextranslator
* Fix code + add missing Q_EMIT
* Add parent
* Continue to implement translator engine base
* Continue to implement it
* Get credential
* Continue to implement bingtranslator engine
* Remove mem leak
* Return error when ServiceUnavailableError is returned
* Continue to implement translator engine
* Add translatorengineaccessmanager class
* Port to translatorenginebase
* Start to create other translator engine
* Create on stack
* use KF_INSTALL_TARGETS_DEFAULT_ARGS
* Return if we can execute plugin
* Use Qt:: directly
* Show includes in qtc6
* richtexteditwithautocorrection simplify condition
* Use the CMake module name for KIO
* Fix pimcommon CMake
* Fix Bug 456578 recipient auto-completion does not work in master git snapshots (bug 456578)
* Show header in qtc6


### LibKGAPI

* Use Qt:: directly
* Remove unused forward declaration
* Replace _POSIX_SOURCE->_GNU_SOURCE for saslplugin


## kmailtransport

* use KF_INSTALL_TARGETS_DEFAULT_ARGS
* Use Qt:: directly
* Show headers in qtc6


## libkleo

* KF5LibkleoConfig: Use QT_MAJOR_VERSION from build time
* Add SystemInfo::isDarkModeActive
* use KF_INSTALL_TARGETS_DEFAULT_ARGS
* Always treat time_t as an unsigned 32-bit number
* Use Qt:: directly
* Prevent screen readers from reading the tool tip
* Show header in qtc6
* Bump library version
* Add more convenience helpers for applying algorithms to a range
* Bump library version
* Add helper to check if all elements in a range satify a predicate
* Unify labeling of creation and expiration date
* Remove unused forward declaration
* Announce empty cells of user ID rows as "User ID"
* Add accessibleExpirationDate overload for signatures
* Provide improved representation of signature attributes for screen readers
* KMessageBox::sorry is deprecated in kf5.97
* Bump library version
* Add QTreeView-derived variant of NavigatableTreeWidget
* Disable expanding and collapsing of items with arrow keys
* Add missing camel-case header file
* Bump library version
* Format key ID and provide improved representation for screen readers
* Make KeyListView navigatable column by column
* Add a tree view with improved keyboard navigation
* Bump library version
* Add helpers for accessible creation date and expiration date of subkeys
* Improve some accessible names of icon-only buttons
* Add accessible names for a few icon-only buttons
* Explicitly include QStringBuilder for operator%
* Set list as buddy of corresponding label
* Announce current item when lists get focus
* Set accessible name for the attribute entries
* Ensure consistent selection of the current item
* Select the first item in both lists after filling the lists
* Add accessible names for the lists
* Separate buttons for changing the entries and for changing the order
* Remove useless checks for QT_NO_TREEWIDGET
* Make selection of the attributes with the keyboard work
* Add accessible names for tool buttons for changing the attribute order
* Modernize: Use vectors instead of arrays
* Bump library version
* Fix invalid regular expression
* Replace Formatting::deVsString with DeVSCompliance::name
* Add a helper for decorating a button according to compliance
* Add namespace DeVSCompliance for helpers related to compliance
* Bump library version
* Make colors work with dark themes
* Disable customs colors if high-contrast mode is active on Windows
* Explicitly set foreground color to black
* Unify order and style of includes
* Remove IS_DE_VS macro
* Prepare code for future qgpgmeqt6
* Fix lib name
* Add the required dependency on QGpgme to the Config.cmake file


### GrantleeTheme #

* KF5GrantleeThemeConfig: Use QT_MAJOR_VERSION from build time
* use KF_INSTALL_TARGETS_DEFAULT_ARGS
* Use Qt:: directly


### KCalUtils #

* use KF_INSTALL_TARGETS_DEFAULT_ARGS
* Use Qt:: directly
* Show header in qtc6
* const'ify variables


### KMBox #

* use KF_INSTALL_TARGETS_DEFAULT_ARGS
* Use Qt:: directly


### Gravatar

* use KF_INSTALL_TARGETS_DEFAULT_ARGS
* Use Qt:: directly
* Show headers in qtc6


## messagelib

* use KF_INSTALL_TARGETS_DEFAULT_ARGS
* Use Qt:: directly
* Show warning only if two strings is empty
* const'ify pointer
* Start to implement ed25519 support for dkim
* Show headers in qtc6
* Remove empty line
* Don't try to load cache from empty collection id
* Don't try to load cache from empty collection id
* Don't show close button
* We can assign KMime::MDN::SendingMode too
* Add KMime::MDN::SendingMode in signal too
* Move as static method
* KMessageBox::sorry is deprecated in kf5.97
* Add missing find_dependency calls
* Show headers in qtc6
* Fix includes
* Fix bug 448674: Spam false-positive, because link's href & text capitalization mismatch (bug 448674)
* const'ify pointer
* When printing using subject as filename
* Const'ify pointer
* Use delete keyword here
* It seems that it's not necessary here
* Remove unused lib
* Prepare to use future qgpgmeqt6
* Fix lib name


## mailimporter

* use KF_INSTALL_TARGETS_DEFAULT_ARGS
* Use Qt:: directly
* Show headers in qtc6


## mailcommon

* use KF_INSTALL_TARGETS_DEFAULT_ARGS
* Use Qt:: directly
* Show headers in qtc6
* Remove unused code
* Remove duplicate includes
* Reduce duplicate code
* Add debug
* Add KMime::MDN::SendingMode settings
* Fix dependancy
* Port code
* Use directly modifyItem
* Fix mem leak + add signal finished
* Fix mem leak + add signal finished
* Remove unused signal
* KMessageBox::sorry is deprecated
* Show headers in qtc6
* Continue to improve mdnwarningjob
* const(ify pointer
* Const'ify more pointer + use Q_REQUIRED_RESULT
* Const'ify pointer
* Use correct text for button


### Calendar Support #

* use KF_INSTALL_TARGETS_DEFAULT_ARGS
* Use Qt:: directly
* Show headers in qtc6
* Use Summary, not Title, in the UI
* Port KCalPrefs::categoryColor to Akonadi::TagCache::tagColor
* Remove unused forward declaration
* KMessageBox::sorry is deprecated in kf5.97
* Use the Akonadi::TagCache from Akonadi


## kontactinterface

* use KF_INSTALL_TARGETS_DEFAULT_ARGS
* Remove service type definition


## eventviews

* use KF_INSTALL_TARGETS_DEFAULT_ARGS
* Allow drag-and-drop from the Month View (bug 182867)
* Use Qt:: directly
* Port from KCalPrefs::categoryColor to Akonadi::TagCache::tagColor
* Remove service type definition for calendar decorations
* KMessageBox::sorry is deprecated in kf5.97
* Add codespellrc.license
* Port to PMF signal/slot syntax


## incidenceeditor

* use KF_INSTALL_TARGETS_DEFAULT_ARGS
* Create new to-dos in the system time zone, not "floating" (bug 457241)
* Port to PMF signal/slot syntax
* Use Qt:: directly
* Show headers in qtc6


## libksieve

* Use Qt:: directly
* Show headers in qtc6
* Remove kioslave
* We depend against kf5.96
* Convert file to UTF-8
* Show headers in qtc6
* Portaway from ERR_SLAVE_DEFINED


### KPkPass

* Use Qt:: directly


### KItinerary

* Fix the plausible gate logic in the pkpass extractor
* Fix poppler variable name
* Extract geo coordinates from Google maps links in Flixbus tickets
* Add API for extractor scripts to query PDF links in a specific sub rect
* Add Flixbus PDF ticket extractor
* Use Qt:: directly
* Fix Flixbus ticket tokens extracted from JSON-LD in more cases
* Increase the upper complexity bound for vector barcodes
* Perform airport terminal detection in the generic boarding pass extractor (bug 457702)
* Extract the airport terminal detection logic into its own class
* We use include don't forward it
* Add workaround for trainline.eu emails containing wrong SNCF ticket tokens
* Work around RCT2 fields claiming to have a 0x0 size
* Workaround for UIC 918.3 version 1 tickets claiming to use version 2 format
* Deduplicate UIC 918.3 header magic numbers and signature size logic
* Remove unused forward declaration
* Add Fjord Line extractor script
* Apply day rollover post-processing for boat/ferry trips as well
* Document the eos.uptrade ticket format
* Handle all DB language variants for ical events
* Extract full itenerary from Deutsche Bahn ical events
* Add merging rules for boat/ferry trips
* pdfvectorpicture sourceHeight should not use width
* Handle alternative MAV barcode format
* Fix filter pattern matching against null bytes in binary content
* Allow ticketedSeat for bus extractors
* Add sorting support for boat/ferry trips
* Improve booking.com address parsing
* Add extractor script for GNV ferries
* Provide access to external links in PDF documents
* Add JS API for creating ferry/boat trip reservation objects
* Also generate iCal events for boat/ferry trip reservations
* Add validation rules for ferry/boat trips
* Add post-processing rules for ferry/boat trips
* Add support for Code 39 ticket tokens
* Also detect 1D barcodes by default
* Consider vector path complexity for determining plausible barcode formats
* Perform barcode decoding of image child nodes in PDF processor directly
* Factor out barcode decoding of document nodes
* Move barcode format plausibility checks out of decoding methods entirely
* More precise Renfe barcode filter expression
* Select the better strings when merging
* Prefer longer ticket tokens when merging
* Remove aspect-ratio related barcode decoding logic
* Use already existing child nodes rather than do manual barcode decoding
* More detailed result reporting for barcode plausibility checks
* Refactor Trenitalia extractor to support extraction from barcodes as well
* Expose JsonLdDocument::apply to extractor scripts
* Compute validity dates from SSBv2 data as well
* Iterate over ERA SSB child nodes rather than PDF images
* Try harder to find the first day of validity on RCT2 tickets
* Enable direct barcode extraction for Renfe
* Check more thoroughly whether we have a valid trip
* Also run extraction tests on PNG files
* Support ZXing 1.4.0
* Improve DB arrival platform parsing
* Compare location names space-insensitively
* Add tariff code for SNCF Carte Jeune
* Verify ical loading
* Generalize VGN extractor script to handle EOSU ticket layouts
* Make UIC 918.3 ticket layout size script-accessible
* Only add class information when actually available
* Fix extraction of Akademy 2022 registration emails
* Slightly stricter date/time matching patterns
* Remove conditional KCalendarCore usage
* Add more test cases for name-based location comparisons
* Produce better results for just scanning a DB domestic UIC 918.3 code
* Relax ZSSK arrival time regex a bit
* Adjust ZSSK extractor script to also handle bicycle tickets/reservations


## ktnef

* use KF_INSTALL_TARGETS_DEFAULT_ARGS
* Use Qt:: directly


## akonadi-import-wizard

* Use Qt:: directly
* Use QCommandLineOption directly => avoid potential bug with QString value


## akonadi-calendar-tools

* Use Qt:: directly
* Use non-deprecated method to determine calendar loading status


## akonadiconsole

* Use Qt:: directly
* Add clear button
* Use QCommandLineOption directly => avoid potential bug with QString value
* USe Akonadi/ClearCacheJob
* Use directly new dbaccess class


## kaddressbook

* use KF_INSTALL_TARGETS_DEFAULT_ARGS
* Adapt to new api
* Use Qt:: directly
* Remove unused ServicesTypes from Kontact plugin


## akregator

* Use Qt:: directly
* Remove unused ServicesTypes from Kontact plugin
* Drop unused KF5Service dependency
* Drop unused QGpgme dependency
* Prepare to use future qgpgme-qt6


## grantlee-editor

* Use Qt:: directly
* Points dead link to the wayback machine, and fixes grammar


## kalarm

* Use Qt:: directly
* Make QRegularExpressions static const
* Fix regression in 1eb97bd5a9eb87ee8c6ed9f09c0f4942764ab7cd
* Show headers in qtc6
* Remove unused forward declaration
* Update change log
* QRegExp -> QRegularExpression
* Use more descriptive name for X11 cmake variable
* Add CMake option to build WITHOUT_X11
* QRegExp -> QRegularExpression
* QRegExp -> QRegularExpression
* KMessageBox::sorry is deprecated in kf5.97 use KMessageBox::error
* Convert to Qt6 compatible code
* Rationalise use of listViewOptions()
* Update org.kde.kalarm.appdata.xml - remove historic releases due to duplicates
* Use QSharedPointer where possible instead of raw pointers
* Bug 456845: Set volume correctly for repeated audio alarms
* Fix CI failure
* Use incremental version suffix to make version unique for each KDE Gear release
* Append the KDE Gear version to KAlarm's version
* Use QNativeInterface to access X11 connection for Qt >= 6.2


## kdepim-addons

* Fix icon size
* Show dialogbox
* Code moved in pimcommon
* Add support for configure dialogbox
* Continue to implement configure dialog
* Open configure dialogbox
* continue to implement dialog
* Prepare dialogbox
* Add search line edit
* We need a config dialog here
* const'ify pointer + add parent
* Fix show duplicate name
* Create on stack
* const'ify++
* const'ify more pointer
* const'ify pointer + add missing Q_REQUIRED_RESULT
* Const'ify pointer + add parent
* Add missing Q_REQUIRED_RESULT
* Const'ify pointer
* Fix update preview when we change selected item
* Const'ify pointer
* Use Qt:: directly
* Show headers in qtc6 here too
* Add question dialog box
* Reduce duplicate code
* Fix show includes in qtc6
* Add window Title
* Remove unused forward declaration
* Don't use deprecated method
* Remove servicetypes from calendar plugins
* KMessageBox::sorry is deprecated in kf5.97
* Add support for boat/ferry reservations
* Allow to show red text when error
* Add info when we start process
* Remove comment
* Use auto vs auto *
* Add info about finished job
* USe start
* Fix can start
* Make as read only
* Show dialogbox
* send process output info
* Add private symbol export
* Add dialog box for process output
* Add process
* implement akonadidatabasetoolsjob
* Prepare to create job
* Create plugins
* Export symbol
* Generate debug file
* Add tools
* Fix i18n
* Add debug file
* Add plugin
* Prepare plugin for manage akonadi database
* Use correct text on button
* Prepare to use future Qgpgmeqt6


## kdepim-runtime

* Port to detailedError
* Use Qt:: directly
* show headers in qtc6
* Remove unused forward declaration
* Remove davgroupwareprovider service type
* KMessageBox::sorry is deprecated in kf5.97


## kleopatra

* Keep a reference to the key to certify
* Fix tool tip for S/MIME CSR and set accessible description
* Activate breeze-dark on Windows for darkMode
* Fix same disk detection in moveDir
* Fix asking for certification of single imported OpenPGP key
* Update information about OpenPGP keys on smart card if keys have changed
* Reduce inherited handles for Windows child proc
* Treat expiration times as unsigned numbers and prevent overflows
* Treat creation and expiration times as unsigned 32-bit numbers
* Use Qt:: directly
* Store and restore the size of the dialog, not its geometry
* Add a label explaining what the user is expected to do
* Use an InfoField for the fingerprint
* Remove <html> tag from the tool tip
* Make InfoField available for other parts of Kleopatra
* Add helper for storing/retrieving the accessible name of a QAction
* Set accessible name for User ID list
* Send state-change event if user ID is checked or unchecked
* Announce current item when user ID list gets focus
* Close tool tip instead of dialog if Escape is pressed
* Set a more accessible name for the collapsible Advanced group box
* Avoid keyboard focus for UI elements in the collapsed content area
* Associate labels with corresponding form inputs
* Make label showing fingerprint of key to certify accessible
* Include moc file again in revoke cert command
* Clarify UiServer Windows error Message Box
* Remove obsolete files
* Simplify the revocation of certifications
* Handle exceptions in UIServer initalization
* Add support for flagging a user ID as the primary user ID
* Remove duplicate includes
* Check if there are any certifications the user can revoke
* Modernize the check that the user IDs belong to the key
* Log a warning if the signatures are not available
* Add helper to check that a user ID belongs to a key
* Make overwrite confirmation look more like the Qt one
* Do not ask twice for confirmation to overwrite existing file
* Propose a file name for the generated revocation certificate
* Store the full path if path references a directory
* Store last used export directory in state config
* Add/use common helper for persisting the last used export directory
* Fix another c++20 initializer
* Move c++20 initializers out of for statement
* Use ReceiveKeysJob for refreshing OpenPGP keys
* Ensure that the current item stays visible
* Update column sizes if all tests are shown
* Announce current item when test results tree gets focus
* Set accessible name for the test results tree
* Simplify interface of SelfTestDialog
* Initially, give keyboard input focus to the tree view
* Move Show all check box next to other check box
* In automatic mode, do not show passed tests initially
* Remove unused c'tor
* Prevent scroll areas from receiving focus
* Allow the labels to receive keyboard input focus
* Make test results tree view navigatable column by column
* Modernize signal-slot connections
* Create UI of Self Test dialog in code
* Unify labeling of creation and expiration date
* Remove unused forward declaration
* Add buttons for invoking actions on selected user ID or certification
* Use actions for operations on user IDs and their certifications
* Add helpers for checking feasibility of certification revokations
* Make userHasCertificationKey() helper available elsewhere
* Change selection mode to single selection
* Set accessible name for the user ID and certifications tree
* Show a simple success message instead of a complicated result dialog
* Make name of class reflect what it does
* Offer separate actions for creating OpenPGP key pair resp. S/MIME CSR
* Create OpenPGP certificate by default with --gen-key
* Only offer creation of OpenPGP certificate in selection dialog
* Hide empty list of related addresses
* KMessageBox::sorry is deprecated in kf5.97
* Use NavigatableTreeView for the certificate tree view
* Disable parent<->child navigation with left/right arrow keys
* Make certifications tree view navigatable column by column
* Use NavigatableTreeWidget instead of deriving from QTreeWidget
* Draw a less prominent focus indicator for text labels
* Add and use a custom tool button
* Use new workflow for OpenPGP certificate creation if protocol is OpenPGP
* Use NewOpenPGPCertificateCommand if we want an OpenPGP certificate
* Require needed version of libkleo
* Resize all columns to fit their contents
* Add column with storage location of subkeys
* Add accessible texts for subkeys table and some column values
* Make the subkeys table accessible
* Create UI of Subkeys widget in code
* Ensure consistent selection of the current item
* Explicitly set cursor position as workaround for event order problem
* Add workaround for a bug in QListView::currentChanged
* Set accessible name for input fields and their labels
* Set default attribute order if no custom order is configured
* Set accessible names for search input field and list of groups
* Make tooltips more verbose and add some accessible names
* Make name input field a buddy of its label
* Fix copy&paste error
* Use flat group boxes for grouping the two lists of keys
* Announce current item when certificate list gets focus
* Ensure that current group is selected when list gets focus
* Give keyboard focus to the search input field when showing dialog
* Make model used for list of groups a single-column model
* Prevent accidental closing of dialogs when pressing Enter
* Add labels to the Search fields
* Write comment lines with DN attributes to trust list file
* Avoid duplicating the last empty line when writing back lines
* Append optional relax flag to (un)trusted root certificates
* Write header blurb to start of newly created trustlist.txt
* Prevent scroll area embedding config page from receiving focus
* Ensure correct tab order
* Set accessible names for a few icon-only buttons
* Do not export anything if the user canceled the operation
* Improve cursor positioning of certificate input field
* Port filtering of groups to QRegularExpression
* Fix filtering of certificates by a text pattern
* Set useful accessible names for the radio buttons
* Give keyboard focus to the checked radio button when showing dialog
* Make focus helpers available for other dialogs
* Use the more accessible date combo box for the expiration date
* Use DeVSCompliance helper for setting icon and color for compliance
* Port to helpers in DeVSCompliance namespace
* Initialize GpgME earlier
* Fix Windows cross-build with gcc 8
* Revert "C++20: Use defaulted equality comparison"
* Fix connects for Windows build
* Handle high-contrast mode in certificate categories configuration
* Disable customs colors if high-contrast mode is active on Windows
* C++20: Use defaulted equality comparison
* Add Revoke Certifications button below user ID table
* Reorder context menu entries
* Add Revoke User ID button below user ID table
* Allow selection of multiple user IDs
* Disable Certify and Revoke Certification if user lacks required key
* Add helpers for checking properties of keys
* Disable Show Issuer Certificate button for root certificates
* Rework update of visibility and availability of UI elements
* Inform the user if the issuer certificate wasn't found
* Avoid duplicate entries in the S/MIME address list
* Simplify hiding of user ID related UI elements for S/MIME certificates
* Show the S/MIME attributes together with the common key properties
* Allow keyserver queries with a single character
* Properly terminate decrypt/verify operation if user cancels it
* Disable Decrypt/Verify button if required files do not exist
* Simplify code
* Use correct folder when asking for file to verify
* Fix check if signed file corresponding to detached signature exists
* On request, save decrypted file with embedded file name
* Store file name of result file in DecryptVerifyResult
* Allow retrieving the file name of an Output
* Use automatic memory management for temporary working directory
* Use list-initialization for command line options
* Simplify check if user ID should be checked
* Set file name of encrypted data if a single file is encrypted
* Do not skip email addresses if there is no email attribute field
* Add support for compilers lacking <ranges>
* Remove check for BinaryAndFineGrainedIdentify feature in GpgME
* Allow changing the auto-extract option in the settings dialog
* Simplify listening for changed settings
* Initialize all members in-class
* Add option to control automatic extraction of decrypted archives
* Show related addresses of S/MIME certificates as simple list
* Disable expanding and collapsing of items by double-clicking
* fixup! Show all configured S/MIME attributes
* Show trust level icon next to trust level text for S/MIME
* Show trust level of S/MIME certificate separately of user ID table
* Show all configured S/MIME attributes
* Properly memory manage the info fields
* Move the key protocol to the window title
* Rearrange the buttons in the two button rows
* Prepare to use future Qgpgmeqt6
* Use isDeVs() instead of IS_DE_VS macro
* Remove informational text and add label for User ID table
* Remove the "Certificate Details" group box
* Use a tool tip for the help text in the Delete Certificate dialog
* Make the tool tip pop-ups in the Certify dialog accessible
* Make the info buttons accessible
* Do not pass the main widget as parent to sub-layouts
* Create all widgets in the correct tab order
* Use a simple QWidget instead of a QScrollArea for the animated expander


## kmail

* Adapt to new api
* Use Qt:: directly
* Fix 395711:  External images not loaded by default if message was opened in a separate window (bug 395711)
* Show headers in qtc6
* Hide messagewidget when MDN status changed
* Remove not necessary comment
* Move MDN code to kmreaderwin
* Symplify code
* Remove it
* Fix create mdn response
* Fix dependancy
* Use MailCommon::MDNWarningJob directly
* Add FIXME comment
* Hide warning when we change mdn
* Use directly connect
* Remove unused forward declaration
* Set response
* Use finished signal
* Use finished signal
* Fix assert when using an empty tab to load a folder
* Continue to implement mdn job
* Continue to implement mdn job
* Remove unused ServicesTypes from Kontact plugin
* KMessageBox::sorry is deprecated in kf5.97
* Fix show headers in qtc6
* Remove unused includs
* Create dialog on stack
* Start process
* Fix mem leak
* Allow to restart akonadi server
* Add warning about missing apps
* Add \n
* Add clear folder akonadi cache
* Depend against last akonadi
* Prepare to use MDNWarningJob
* Remove old todo
* Remove duplicate code



## knotes

* Use Qt:: directly
* Remove unused ServicesTypes from Kontact plugin
* KMessageBox::sorry is deprecated in kf5.97
* [kontactsummary] Improve consistency with other summary items


## kontact

* Use Qt:: directly


### KOrganizer #

* Use Qt:: directly
* Show headers in qtc6
* Port from KCalPrefs::categoryColor to Akonadi::TagCache::tagColor
* Remove unused forward declaration
* Remove unused ServicesTypes from Kontact plugin
* Remove remnants from old part system
* KMessageBox::sorry is deprecated in kf5.97
* Drop unused KF5Service dependency
* Add icon to upcoming event summary pop-up menu
* Add icon to pending to-do summary pop-up menu
* Fix special dates summary configuration (bug 393054)
* not necessary to use slot here
* Merge failure due to whitespace change
* Fix crash when completing a to-do in the summary view (bug 454536)



## pim-data-exporter

* Use Qt:: directly
* Use QCommandLineOption directly => avoid potential bug with QString value
* Fix forward declaration
* Disable for the moment


## pim-sieve-editor

* Use Qt:: directly
* Use QCommandLineOption directly => avoid potential bug with QString value
* KMessageBox::sorry is deprecated now
* Show headers in qtc6


## Kalendar

* Update dependency versions in README.md
* Revert "Fix crashing when switching away from the Month View"
* Improve differentation between all-day and non all-day incidences in day grid view
* Fix broken calendar source item labels
* Fix issues with incidence info drawer sizing
* Fix crashing when switching away from the Month View
* Make links clickable in TextPart
* Fix 'Refresh all calendars' entry in hamburger menu
* Ensure exception date strings wrap in the Incidence Info drawer
* Import gpgme6 on qt6
* Fix difference in syntax between QRegEx and QRegularExpression
* Don't require ci to pass on freebsd
* Remove some QRegExp usage
* Fix appstream test
* Remove more dead code
* Make html emails actually work
* Fix another crash due to auto and QString
* Remove webengine from C++
* Remove duplicate property definitions in incidencewrapper.h
* Revert "kdepim-runtime is a runtime dep not a build dep"
* kdepim-runtime is a runtime dep not a build dep
* Remove unused QML import
* Don't forward and include class
* Port menus away from PC2
* Use non-deprecated API to check the calendar loading state
* Remove unused forward declaration
* Make the mail headers look pretty
* Make the layout of the mail viewer contents more consistent
* Improve display of error message
* Use more smart pointer
* Add tests to cmake files and fix some reuse issues
* Display if the email contains an invitation
* Add sender information and attachment handling
* Implement search
* Show unread mail
* Display email
* Import mimetree parser code from kube/sink
* Add folder title in mail list page
* Add folder title in mail list page
* Add data separator in folder list
* Start adding mail integration
* Remove 1D barcodes formats as options to export vCards
* Port CalendarItemMouseArea to CalendarItemTapHandler
* Remove unused forward declaration
* Fixed tasks' tags getting compressed to nothing in the tasks view when the task summary is very long
* Fix openDayLayer
* Fix calendar source mouse area in main sidebar
* Remove qml debugging
* Fix contact applet
* Remove misplaced symbol
* Fix from review
* Add right click menu to collection and item for address book
* Replace construction of date string with just using date numbers to build date with fixed year
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 195 bytes
Desc: This is a digitally signed message part.
URL: <http://mail.kde.org/pipermail/kde-pim/attachments/20220825/0b4950bd/attachment-0001.sig>


More information about the kde-pim mailing list