Skip to content

Jetpack connection UI #22079

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Draft
wants to merge 70 commits into
base: trunk
Choose a base branch
from
Draft

Jetpack connection UI #22079

wants to merge 70 commits into from

Conversation

nbradbury
Copy link
Contributor

@nbradbury nbradbury commented Jul 31, 2025

Closes #CMM-641

This PR implements the UI for the Rest-based Jetpack connection flow. Note there is no networking logic here - that will come later - and there are a number of TODOs. This is being merged into a feature branch so end users won't see it until the feature branch is eventually merged.

For now, when the main activity starts I automatically show the connection flow. This will be removed before merging.

To test

  • Start the app and verify the UI for the connection flow looks fine
  • Restart the app and hit the close icon before the flow completes and verify you're ask whether to cancel
  • Change the code at the end of JetpackConnectionViewModel.startStep so that one of the steps fails (code snippet below), verify that it fails and a Retry button appears, and when tapped the button restarts the failed step.
       // TODO this is just to test the UI
        delay(STEP_DELAY_MS)
        if (step == ConnectionStep.InstallJetpack) {
            updateStepStatus(step, ConnectionStatus.Failed)
        } else {
            updateStepStatus(step, ConnectionStatus.Completed)
        }
ui.mp4

@wpmobilebot
Copy link
Contributor

wpmobilebot commented Jul 31, 2025

Jetpack📲 You can test the changes from this Pull Request in Jetpack by scanning the QR code below to install the corresponding build.
App NameJetpack Jetpack
FlavorJalapeno
Build TypeDebug
Versionpr22079-b78c454
Commitb78c454
Direct Downloadjetpack-prototype-build-pr22079-b78c454.apk
Note: Google Login is not supported on these builds.

@wpmobilebot
Copy link
Contributor

wpmobilebot commented Jul 31, 2025

WordPress📲 You can test the changes from this Pull Request in WordPress by scanning the QR code below to install the corresponding build.
App NameWordPress WordPress
FlavorJalapeno
Build TypeDebug
Versionpr22079-b78c454
Commitb78c454
Direct Downloadwordpress-prototype-build-pr22079-b78c454.apk
Note: Google Login is not supported on these builds.

@nbradbury nbradbury requested a review from Copilot July 31, 2025 21:13
Copy link
Contributor

@Copilot Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR introduces a new Jetpack connection UI that guides users through the process of connecting their self-hosted WordPress site to Jetpack. The implementation includes a step-by-step connection flow with visual status indicators and error handling.

  • Adds a complete Jetpack connection UI with ViewModel, Activity, and Compose screen
  • Implements a multi-step connection process with status tracking and error handling
  • Provides user feedback through animated UI states and confirmation dialogs

Reviewed Changes

Copilot reviewed 7 out of 7 changed files in this pull request and generated 6 comments.

Show a summary per file
File Description
strings.xml Adds localized strings for the Jetpack connection UI
WPMainActivity.java Temporarily launches the new Jetpack connection activity for testing
JetpackConnectionViewModel.kt Implements the connection logic and state management
JetpackConnectionScreen.kt Provides the Compose UI for the connection flow
JetpackConnectionActivity.kt Activity that hosts the connection screen
ScreenWithTopAppBarM3.kt Reusable Compose component for screens with top app bars
AndroidManifest.xml Registers the new JetpackConnectionActivity

Copy link

sonarqubecloud bot commented Aug 1, 2025

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants