Introduce the new print queue manager app

This MR provides the rewrite of the print queue manager:

  • Removes the old version
  • Adjusts the jobs model appropriately, retaining compatibility
  • Adds the new Kirigami/QML version of the app (greatly simplifies the code)
  • App is renamed from kde-print-queue to plasma-print-queue
Functional Changes
  • Per-role sorting is NLA (TableView is no longer used). We could instead add a few choice roles to sort by but it's unclear if this is even needed.
  • Show/Hide roles is NLA. The new app has an expanded/concise view option instead
Notable Fixes

BUG: 499546

CCBUG: 512442

  • Removed multi-job select (this was causing inconsistent results for job state management)
  • Fixed drag and drop moving jobs to other permanent queues
    • DnD is app-internal only
  • Job state messages can now be displayed properly
  • The app can now be run without having to know the internal print queue id (ie. from KRunner proper)
Technical Notes
  • Is a KirigamiApp::App
  • Jobs model is a somewhat complex tree model using a QStandardItemModel
    • use KItemModels::KDescendantsProxyModel to flatten
    • a later MR would complete the model-refactor
    • see commit for changes
  • This sets the stage for a later MR to port the media settings/banner policies config to this new app, as second page for queue management
  • Drag/drop is internal only
Using Cards for Jobs Showing job-in-process messages (one queue configured)
Screenshot_20260201_035856 Screenshot_20251012_102850
Screenshot_20260202_101143 Screenshot_20260202_100954
Testing
  • Make sure the app is accessible from both the plasmoid and kcm
  • Perform new print job management functions (cancel, hold, reprint, move)
** Not to be merged until after 6.5 release

See issue for more info: Closes: #10 (closed)

Edited by Mike Noe

Merge request reports

Loading