Skip to content

Add connected-device details panel #31

Description

@SamratB8

Summary

Create a WinUI panel that displays detailed information about the currently selected Android device or emulator.

The panel should update when the user selects a device from the connected-device list and should handle missing, disconnected, or partially identified devices safely.

Background

The dashboard device list provides an overview of connected targets.

A separate details panel will make the interface more useful by showing structured information without overcrowding the main list.

Dependencies

This issue depends on:

The details panel should consume the structured device model rather than parsing ADB text itself.

Information to Display

Display available values such as:

  • Friendly model name
  • Device serial number
  • Connection state
  • Product
  • Device codename
  • Transport ID
  • Connection type
  • Whether the target appears to be an emulator

Only display values that are actually available.

Missing values should use a neutral representation such as:

Not available

Avoid displaying misleading invented values.

UI Requirements

The details panel should include:

  • A clear panel title
  • A selected-device summary
  • Structured labels and values
  • A visible connection-state indicator
  • A placeholder when no device is selected
  • A safe state when the selected device disconnects
  • Responsive behavior when the window is resized

The panel should follow the existing WinDroid Studio visual style.

Selection Requirements

When the user selects a device:

  • The details panel should update immediately
  • The selected device should remain clear in the list
  • No additional ADB call should be required for fields already present in the model

When the device list refreshes:

  • Preserve the selection if the same serial number still exists
  • Clear the selection if the device is no longer present
  • Avoid displaying stale information
  • Avoid selecting a different device accidentally

Tasks

  • Add device selection to the dashboard list
  • Create the device-details panel
  • Bind the panel to the selected device
  • Display all available structured fields
  • Add no-selection state
  • Add disconnected-device handling
  • Preserve selection across refresh where possible
  • Clear stale details safely
  • Keep ADB parsing outside the WinUI project
  • Add accessibility labels where appropriate

Accessibility Requirements

  • Important controls should have accessible names
  • Connection state should not rely on colour alone
  • Text should remain readable under Windows scaling
  • Keyboard users should be able to select devices
  • Focus order should remain logical

Out of Scope

This issue does not need to:

  • Query battery status
  • Query storage information
  • Query Android version
  • Query screen resolution
  • Add screenshots of the device
  • Add device-control actions
  • Add package-management controls
  • Add live hardware monitoring

Acceptance Criteria

  • Selecting a device displays its details.
  • Serial number and connection state are visible.
  • Optional detailed fields appear when available.
  • Missing optional fields are handled cleanly.
  • No-device and no-selection states are clear.
  • Refreshing the device list does not leave stale details.
  • Selection is preserved when the same device remains connected.
  • Selection is cleared when the device disconnects.
  • The UI remains usable with zero, one, or multiple devices.
  • Keyboard navigation works for device selection.
  • The full solution builds successfully in Debug and Release configurations.
  • No new compiler warnings are introduced.

Metadata

Metadata

Assignees

No one assigned

    Labels

    adbWork involving Android Debug Bridge integration, device communication, commands, and diagnostics.enhancementNew feature or requesthelp wantedExtra attention is neededphase-1Work planned for the first development phase and initial usable project foundation.winuiWork related to the WinUI 3 desktop interface, windows, controls, styling, and user experience.

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    Status
    Backlog

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions