mirror of
https://github.com/AppFlowy-IO/AppFlowy.git
synced 2026-03-24 12:56:59 +00:00
[PR #3217] [MERGED] feat: auth pages improvement for mobile and desktop platform #5625
Labels
No labels
2024
2025
2026
acct mgmt
AI
automation
bug
calendar
ci
CJK
cloud
code-block
collaboration
copy-paste
database
data migration
data sync
deploy
desktop
develop
develop
documentation
duplicate
editor
editor-plugin
emoji
export
files
flutter-only
follow-up
formula
good first issue for devs
good first issue for experienced devs
grid
hacktoberfest
HACKTOBERFEST-ACCEPTED
help wanted
i18n
icons
images
importer
improvements
infra
install
integrations
IR
kanban board
login
look and joy
mentorship
mobile
mobile
needs design
new feature
new feature
non-coding
notes
notifications
onboarding
organization
P0+
permission
platform-linux
platform-mac
platform-windows
plugins
program
pull-request
Q1 25
Q1 26
Q2 24
Q2 25
Q3 24
Q3 25
Q4 24
Q4 25
react
regression
rust
rust
Rust-only
Rust-only
Rust-starter
Rust-starter
self-hosted
shortcuts
side panel
slash-menu
sync v2
table
tablet
task
tauri
templates
tests
themes
translation
v0.5.6
v0.5.8
v0.5.9
v0.6.0
v0.6.1
v0.6.4
v0.6.7
v0.6.8
v0.7.1
v0.7.4
v0.7.4
v0.7.5
v0.7.6
v0.7.7
v0.7.8
v0.8.0
v0.8.4
v0.8.5
v0.8.9
web
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
AppFlowy-IO/AppFlowy#5625
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
📋 Pull Request Information
Original PR: https://github.com/AppFlowy-IO/AppFlowy/pull/3217
Author: @hyj1204
Created: 8/16/2023
Status: ✅ Merged
Merged: 9/12/2023
Merged by: @LucasXu0
Base:
main← Head:feat/auth_pages📝 Commits (10+)
2faf297chore: change name 'welcome' to 'workspace'b5d2fc9chore: reorganize codef337510chore: set blend mode null for the logo on splash screenfa45a17refactor: separate mobile theme and desktop theme datab31f291feat: improve desktop sign in screen and 3rd party log in buttons UI93a80f0chore: text to locale and comment out unimplemented buttons07aa732feat: implement MobileSignInScreen50992cechore: improve file hierarchy51615e5refactor: separate WorkspaceStartScreen in desktop and mobile891457efeat: add mobile home page placeholder📊 Changes
51 files changed (+1564 additions, -872 deletions)
View changed files
➖
frontend/appflowy_flutter/assets/images/app_flowy_logo.jpg(+0 -0)📝
frontend/appflowy_flutter/integration_test/util/auth_operation.dart(+4 -4)📝
frontend/appflowy_flutter/integration_test/util/common_operations.dart(+1 -1)📝
frontend/appflowy_flutter/ios/Podfile.lock(+12 -0)📝
frontend/appflowy_flutter/ios/Runner/Info.plist(+11 -0)➕
frontend/appflowy_flutter/lib/mobile/presentation/mobile_home_page.dart(+47 -0)📝
frontend/appflowy_flutter/lib/startup/deps_resolver.dart(+3 -3)📝
frontend/appflowy_flutter/lib/startup/entry_point.dart(+1 -1)➕
frontend/appflowy_flutter/lib/user/presentation/helpers/handle_open_workspace_error.dart(+33 -0)➕
frontend/appflowy_flutter/lib/user/presentation/helpers/handle_success_or_fail.dart(+25 -0)➕
frontend/appflowy_flutter/lib/user/presentation/helpers/helpers.dart(+2 -0)➕
frontend/appflowy_flutter/lib/user/presentation/presentation.dart(+4 -0)📝
frontend/appflowy_flutter/lib/user/presentation/router.dart(+90 -61)📝
frontend/appflowy_flutter/lib/user/presentation/screens/encrypt_secret_screen.dart(+3 -2)➕
frontend/appflowy_flutter/lib/user/presentation/screens/screens.dart(+6 -0)➕
frontend/appflowy_flutter/lib/user/presentation/screens/sign_in_screen/desktop_sign_in_screen.dart(+238 -0)➕
frontend/appflowy_flutter/lib/user/presentation/screens/sign_in_screen/mobile_sign_in_screen.dart(+91 -0)➕
frontend/appflowy_flutter/lib/user/presentation/screens/sign_in_screen/sign_in_screen.dart(+47 -0)➕
frontend/appflowy_flutter/lib/user/presentation/screens/sign_in_screen/widgets/sign_in_anonymous_button.dart(+85 -0)➕
frontend/appflowy_flutter/lib/user/presentation/screens/sign_in_screen/widgets/third_party_sign_in_buttons.dart(+219 -0)...and 31 more files
📄 Description
Organize the code
WelcomeScreenbecomesWorkspaceStartPage.routeNamein every authorization screen, and keep it the same as the screen name. In this way to prevent misspelling the route name.Auth Screens
For all the auth screens, they shared the same workflow(same bloc and state), the only difference between mobile and desktop is their UIs. Thus, for every auth screen, it has two versions of UIs, one is for mobile, and another is for desktop.
For example, we have
MobileSignInScreenandDesktopSignInScreenunderSignInScreen. BothMobileSignInScreenandDesktopSignInScreenuse the widgets likeSignInAnonymousButtonand 'ThirdPartySignInButtons' to achieve the same functionalities with different UIs(isMobileto control which UI will apply)The following screens have been separated into mobile and desktop:
I haven't added any test code yet. I plan to add it once the authentication workflow is more stable.
DesktopSignInScreen
MobileSignInScreen
Google login workflow
https://github.com/AppFlowy-IO/AppFlowy/assets/14248245/fcf8fde5-82f4-487d-9aa7-e4c1565563e4
PR Checklist
🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.