Commit graph

16 commits

Author SHA1 Message Date
84c6795fd6 Ensure MauiKit4plugin builds with alakarte; fix app icon resource path 2026-03-24 11:36:07 +01:00
a0b9ea1832 Integrate MauiKit4/MauiMan4 as submodules, rewrite UI to MAUIkit console shell
- Add MauiMan4 + MauiKit4 submodules pinned at v4.0.2
- Wire both into CMake via CMAKE_FIND_PACKAGE_REDIRECTS_DIR build-tree stub
- Create MauiMan4 header shim for build-tree include layout
- Undefine QT_NO_CAST/QT_NO_FOREACH/QT_NO_KEYWORDS for MauiKit4 targets
- Link alakarte against MauiKit4
- Rewrite Main.qml: Maui.ApplicationWindow, dark console shell, blurred
  game backdrop, category rail, search bar, bottom gamepad hint bar
- Rewrite GameCard.qml: cover-art card with scale+glow focus effects
- Rewrite LibraryView.qml: Maui.GridBrowser with gamepad D-pad navigation
- New ConsoleCategoryRail.qml: horizontal pill category nav with L1/R1
- New ConsoleGameDetail.qml: cinematic full-screen game detail overlay
  with cover art, action buttons, fade-in animation, gamepad hints
2026-03-24 11:35:59 +01:00
e592e7b093 Add Plasma tray, notification inhibition, session control, and flatpak runner
Expand TrayController with daemon health polling every 10 seconds via
D-Bus Ping calls to org.kde.GameCenter1, org.kde.ALaKarte.Runner1, and
org.kde.ALaKarte.Input1. Add menu actions to toggle console behaviors,
notification mirroring, and to restart each daemon via systemctl --user.

Add NotificationInhibitor, owned by App, which calls
org.freedesktop.Notifications Inhibit/UnInhibit on the session bus
whenever the consoleBehaviors config setting changes. The cookie is
released on application quit.

Add consoleBehaviors and mirrorNotifications properties to Config with
KConfig persistence under the [Console] group.

Ship org.kde.alakarte.notifyrc defining GameLaunched, GameExited, and
LaunchFailed notification events so Plasma attributes them correctly in
the notification history.

Extend RunnerManagerDaemon::ResolveLaunch with a flatpak runner branch
that constructs a flatpak run command, translates environment overrides
to --env= arguments, and respects flatpakAppId, flatpakBranch,
flatpakArch, and flatpakArgs from the launch spec.

Add activate_session, switch_to_vt, and terminate_session actions to
the gamecenter KAuth helper and its polkit policy. Each action calls
the corresponding method on org.freedesktop.login1 over the system bus.

Add CouchSidebar.qml, a horizontal source tab bar shown in couch mode
above the library view, exposing the same sourceSelected, settingsRequested,
importRequested, and aboutRequested signals as SidebarView.

Fix duplicate adaptiveFocusRingWidth property in GameCard.qml.
2026-03-22 16:53:09 +01:00
a893d4fd71 cmake: generate Input1 proxy for main app 2026-02-15 15:11:01 +01:00
ed0e6ae181 cmake: enable Qt DBusTools codegen 2026-02-15 13:55:09 +01:00
1e5a86fda8 input: add input service daemon + client 2026-02-12 14:47:50 +01:00
1f1be64c8f Runner: add Runner1 daemon + client 2026-02-09 14:01:15 +01:00
017073c162 Add Game Center daemon target
Build and install the Game Center daemon as a DBus-activated\nuser service. This introduces the new src/gamecenter target and\nwires it into the main build.
2026-02-06 14:01:35 +01:00
aabb8d0f4b Couch Mode: add diagnostics overlay 2026-01-30 11:02:28 +01:00
444ef65a78 Core: add InputManager and couch UI mode 2026-01-29 19:49:27 +01:00
3ec2badcd7 Media: add per-game screenshots manager and gallery 2026-01-25 14:30:02 +01:00
27f5a31561 Cleanup: stop shipping unused FocusableCard.qml 2026-01-25 14:26:11 +01:00
24b9ee6491 UI: Add hint bar and UI mode override
Add a bottom hint bar with keyboard/gamepad hints and controller-specific icons.

Also add a UI mode setting (auto/desktop/handheld) to improve the adaptive layout on different form factors.
2026-01-24 13:27:30 +01:00
40f1c5ff38 Build: Require SDL3
Link against SDL3 and support building against a locally provided SDL3 source tree via ALAKARTE_SDL3_SOURCE_DIR.
2026-01-24 13:20:46 +01:00
946baee9cf Fix app icon resource aliasing
Set the Qt resource alias before qt_add_resources.
This ensures the embedded app icon is resolvable at runtime and avoids
fallback icons rendering incorrectly.
2026-01-20 00:14:45 +01:00
747b02035a alakarte: Initial import
Initial release of A-La-Karte, a unified game launcher for KDE Plasma.

Includes the QML UI, platform importers, AppStream metadata, icons,

and developer documentation.
2026-01-18 13:13:07 +01:00