Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
S
SSBookMinigames
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Administrator
SSBookMinigames
Commits
838d310a
Commit
838d310a
authored
Apr 13, 2026
by
Abdulrahman Mohammed
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Done with Reset Password
parent
be41876d
Changes
8
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
263 additions
and
67 deletions
+263
-67
configure_fingerprint.bin
...lWithDebInfo/5i191b1l/arm64-v8a/configure_fingerprint.bin
+13
-13
configure_fingerprint.bin
...ithDebInfo/5i191b1l/armeabi-v7a/configure_fingerprint.bin
+13
-13
DeepLinkManager.cs
My project/Assets/App/Core/DeepLinkManager.cs
+12
-1
Login.uxml
My project/Assets/AppUI/NewAppUI/Login.uxml
+70
-2
Login.unity
My project/Assets/AppUI/NewAppUI/Scene/Login.unity
+4
-0
LoginPageAnimation.cs
My project/Assets/AppUI/Scripts/LoginPageAnimation.cs
+132
-2
AndroidManifest.xml
My project/Assets/Plugins/Android/AndroidManifest.xml
+18
-35
ProjectSettings.asset
My project/ProjectSettings/ProjectSettings.asset
+1
-1
No files found.
My project/.utmp/RelWithDebInfo/5i191b1l/arm64-v8a/configure_fingerprint.bin
View file @
838d310a
...
...
@@ -2,30 +2,30 @@ C/C++ Structured Logq
o
mD:\Work Games\ssbookminigames\My project\.utmp\RelWithDebInfo\5i191b1l\arm64-v8a\additional_project_files.txtC
A
?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint 3 ֡3n
?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint 3 ֡3n
l
jD:\Work Games\ssbookminigames\My project\.utmp\RelWithDebInfo\5i191b1l\arm64-v8a\android_gradle_build.json 3 ֡3s
jD:\Work Games\ssbookminigames\My project\.utmp\RelWithDebInfo\5i191b1l\arm64-v8a\android_gradle_build.json 3 ֡3s
q
oD:\Work Games\ssbookminigames\My project\.utmp\RelWithDebInfo\5i191b1l\arm64-v8a\android_gradle_build_mini.json 3
oD:\Work Games\ssbookminigames\My project\.utmp\RelWithDebInfo\5i191b1l\arm64-v8a\android_gradle_build_mini.json 3
֡3`
^
\D:\Work Games\ssbookminigames\My project\.utmp\RelWithDebInfo\5i191b1l\arm64-v8a\build.ninja 3 ֡3d
\D:\Work Games\ssbookminigames\My project\.utmp\RelWithDebInfo\5i191b1l\arm64-v8a\build.ninja 3 ֡3d
b
`D:\Work Games\ssbookminigames\My project\.utmp\RelWithDebInfo\5i191b1l\arm64-v8a\build.ninja.txt 3i
`D:\Work Games\ssbookminigames\My project\.utmp\RelWithDebInfo\5i191b1l\arm64-v8a\build.ninja.txt 3i
g
eD:\Work Games\ssbookminigames\My project\.utmp\RelWithDebInfo\5i191b1l\arm64-v8a\build_file_index.txt 3 ֡3j
eD:\Work Games\ssbookminigames\My project\.utmp\RelWithDebInfo\5i191b1l\arm64-v8a\build_file_index.txt 3 ֡3j
h
fD:\Work Games\ssbookminigames\My project\.utmp\RelWithDebInfo\5i191b1l\arm64-v8a\compile_commands.json 3 ֡3n
fD:\Work Games\ssbookminigames\My project\.utmp\RelWithDebInfo\5i191b1l\arm64-v8a\compile_commands.json 3 ֡3n
l
jD:\Work Games\ssbookminigames\My project\.utmp\RelWithDebInfo\5i191b1l\arm64-v8a\compile_commands.json.bin 3 ֡3t
jD:\Work Games\ssbookminigames\My project\.utmp\RelWithDebInfo\5i191b1l\arm64-v8a\compile_commands.json.bin 3 ֡3t
r
pD:\Work Games\ssbookminigames\My project\.utmp\RelWithDebInfo\5i191b1l\arm64-v8a\metadata_generation_command.txt 3
pD:\Work Games\ssbookminigames\My project\.utmp\RelWithDebInfo\5i191b1l\arm64-v8a\metadata_generation_command.txt 3
֡3g
e
cD:\Work Games\ssbookminigames\My project\.utmp\RelWithDebInfo\5i191b1l\arm64-v8a\prefab_config.json 3 ֡3l
cD:\Work Games\ssbookminigames\My project\.utmp\RelWithDebInfo\5i191b1l\arm64-v8a\prefab_config.json 3 ֡3l
j
hD:\Work Games\ssbookminigames\My project\.utmp\RelWithDebInfo\5i191b1l\arm64-v8a\symbol_folder_index.txt 3 ֡3{
hD:\Work Games\ssbookminigames\My project\.utmp\RelWithDebInfo\5i191b1l\arm64-v8a\symbol_folder_index.txt 3 ֡3{
y
wD:\Work Games\ssbookminigames\My project\Library\Bee\Android\Prj\IL2CPP\Gradle\unityLibrary\src\main\cpp\CMakeLists.txt 3 V ա3
wD:\Work Games\ssbookminigames\My project\Library\Bee\Android\Prj\IL2CPP\Gradle\unityLibrary\src\main\cpp\CMakeLists.txt 3 V ա3
D:\Work Games\ssbookminigames\My project\Library\Bee\Android\Prj\IL2CPP\Gradle\unityLibrary\src\main\cpp\FramePacing\CMakeLists.txt 3 ա3
\ No newline at end of file
D:\Work Games\ssbookminigames\My project\Library\Bee\Android\Prj\IL2CPP\Gradle\unityLibrary\src\main\cpp\FramePacing\CMakeLists.txt 3 ա3
\ No newline at end of file
...
...
My project/.utmp/RelWithDebInfo/5i191b1l/armeabi-v7a/configure_fingerprint.bin
View file @
838d310a
...
...
@@ -2,30 +2,30 @@ C/C++ Structured Logs
q
oD:\Work Games\ssbookminigames\My project\.utmp\RelWithDebInfo\5i191b1l\armeabi-v7a\additional_project_files.txtC
A
?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint 3 ֡3p
?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint 3 ֡3p
n
lD:\Work Games\ssbookminigames\My project\.utmp\RelWithDebInfo\5i191b1l\armeabi-v7a\android_gradle_build.json 3 ֡3u
lD:\Work Games\ssbookminigames\My project\.utmp\RelWithDebInfo\5i191b1l\armeabi-v7a\android_gradle_build.json 3 ֡3u
s
qD:\Work Games\ssbookminigames\My project\.utmp\RelWithDebInfo\5i191b1l\armeabi-v7a\android_gradle_build_mini.json 3
qD:\Work Games\ssbookminigames\My project\.utmp\RelWithDebInfo\5i191b1l\armeabi-v7a\android_gradle_build_mini.json 3
֡3b
`
^D:\Work Games\ssbookminigames\My project\.utmp\RelWithDebInfo\5i191b1l\armeabi-v7a\build.ninja 3 ֡3f
^D:\Work Games\ssbookminigames\My project\.utmp\RelWithDebInfo\5i191b1l\armeabi-v7a\build.ninja 3 ֡3f
d
bD:\Work Games\ssbookminigames\My project\.utmp\RelWithDebInfo\5i191b1l\armeabi-v7a\build.ninja.txt 3k
bD:\Work Games\ssbookminigames\My project\.utmp\RelWithDebInfo\5i191b1l\armeabi-v7a\build.ninja.txt 3k
i
gD:\Work Games\ssbookminigames\My project\.utmp\RelWithDebInfo\5i191b1l\armeabi-v7a\build_file_index.txt 3 ֡3l
gD:\Work Games\ssbookminigames\My project\.utmp\RelWithDebInfo\5i191b1l\armeabi-v7a\build_file_index.txt 3 ֡3l
j
hD:\Work Games\ssbookminigames\My project\.utmp\RelWithDebInfo\5i191b1l\armeabi-v7a\compile_commands.json 3 ֡3p
hD:\Work Games\ssbookminigames\My project\.utmp\RelWithDebInfo\5i191b1l\armeabi-v7a\compile_commands.json 3 ֡3p
n
lD:\Work Games\ssbookminigames\My project\.utmp\RelWithDebInfo\5i191b1l\armeabi-v7a\compile_commands.json.bin 3 ֡3v
lD:\Work Games\ssbookminigames\My project\.utmp\RelWithDebInfo\5i191b1l\armeabi-v7a\compile_commands.json.bin 3 ֡3v
t
rD:\Work Games\ssbookminigames\My project\.utmp\RelWithDebInfo\5i191b1l\armeabi-v7a\metadata_generation_command.txt 3
rD:\Work Games\ssbookminigames\My project\.utmp\RelWithDebInfo\5i191b1l\armeabi-v7a\metadata_generation_command.txt 3
֡3i
g
eD:\Work Games\ssbookminigames\My project\.utmp\RelWithDebInfo\5i191b1l\armeabi-v7a\prefab_config.json 3 ֡3n
eD:\Work Games\ssbookminigames\My project\.utmp\RelWithDebInfo\5i191b1l\armeabi-v7a\prefab_config.json 3 ֡3n
l
jD:\Work Games\ssbookminigames\My project\.utmp\RelWithDebInfo\5i191b1l\armeabi-v7a\symbol_folder_index.txt 3 ֡3{
jD:\Work Games\ssbookminigames\My project\.utmp\RelWithDebInfo\5i191b1l\armeabi-v7a\symbol_folder_index.txt 3 ֡3{
y
wD:\Work Games\ssbookminigames\My project\Library\Bee\Android\Prj\IL2CPP\Gradle\unityLibrary\src\main\cpp\CMakeLists.txt 3 V ա3
wD:\Work Games\ssbookminigames\My project\Library\Bee\Android\Prj\IL2CPP\Gradle\unityLibrary\src\main\cpp\CMakeLists.txt 3 V ա3
D:\Work Games\ssbookminigames\My project\Library\Bee\Android\Prj\IL2CPP\Gradle\unityLibrary\src\main\cpp\FramePacing\CMakeLists.txt 3 ա3
\ No newline at end of file
D:\Work Games\ssbookminigames\My project\Library\Bee\Android\Prj\IL2CPP\Gradle\unityLibrary\src\main\cpp\FramePacing\CMakeLists.txt 3 ա3
\ No newline at end of file
...
...
My project/Assets/App/Core/DeepLinkManager.cs
View file @
838d310a
using
UnityEngine
;
using
System
;
using
UnityEngine.Events
;
using
UnityEngine.UIElements
;
public
sealed
class
DeepLinkManager
:
MonoBehaviour
{
[
SerializeField
]
UIDocument
UIDocument
;
public
static
DeepLinkManager
Instance
{
get
;
private
set
;
}
public
string
lastProcessedUrl
;
public
UnityEvent
OnDeepLinkReceived
;
VisualElement
updatePasswordPanel
;
private
void
Awake
()
{
...
...
@@ -32,6 +35,10 @@ public sealed class DeepLinkManager : MonoBehaviour
Destroy
(
gameObject
);
}
}
private
void
Start
()
{
updatePasswordPanel
=
UIDocument
.
rootVisualElement
.
Q
<
VisualElement
>(
"UpdatePasswordPanel"
);
}
private
void
OnDeepLinkActivated
(
string
url
)
{
...
...
@@ -57,7 +64,11 @@ public sealed class DeepLinkManager : MonoBehaviour
resetSessionOrError
.
Switch
(
resetSession
=>
{
updatePasswordPanel
.
style
.
display
=
DisplayStyle
.
Flex
;
updatePasswordPanel
.
experimental
.
animation
.
Start
(
0
,
1
,
200
,
(
v
,
t
)
=>
{
updatePasswordPanel
.
style
.
opacity
=
t
;
});
},
error
=>
{
...
...
My project/Assets/AppUI/NewAppUI/Login.uxml
View file @
838d310a
This diff is collapsed.
Click to expand it.
My project/Assets/AppUI/NewAppUI/Scene/Login.unity
View file @
838d310a
...
...
@@ -536,7 +536,11 @@ MonoBehaviour:
m_Script
:
{
fileID
:
11500000
,
guid
:
55400cde731761ca3943099c02f27902
,
type
:
3
}
m_Name
:
m_EditorClassIdentifier
:
Assembly-CSharp::DeepLinkManager
UIDocument
:
{
fileID
:
1971829438
}
lastProcessedUrl
:
OnDeepLinkReceived
:
m_PersistentCalls
:
m_Calls
:
[]
---
!u!4
&1627471398
Transform
:
m_ObjectHideFlags
:
0
...
...
My project/Assets/AppUI/Scripts/LoginPageAnimation.cs
View file @
838d310a
...
...
@@ -41,8 +41,14 @@ public class LoginPageAnimation : MonoBehaviour
CheckAndHandleIfComingFromGuest
();
HandleShowPassword
();
HandleForgetPasswordPanel
();
HandleUpdatePasswordPanel
();
}
List
<
TextField
>
passwordField
=
new
();
private
void
HandleShowPassword
()
{
...
...
@@ -107,8 +113,7 @@ public class LoginPageAnimation : MonoBehaviour
};
}
private
async
void
HandleLogin
()
private
void
HandleLogin
()
{
Button
loginButton
=
loginPage
.
rootVisualElement
.
Q
<
Button
>(
"LoginButton"
);
...
...
@@ -426,6 +431,131 @@ public class LoginPageAnimation : MonoBehaviour
return
string
.
IsNullOrEmpty
(
content
);
}
private
void
HandleForgetPasswordPanel
()
{
VisualElement
forgetPasswordPanel
=
loginPage
.
rootVisualElement
.
Q
<
VisualElement
>(
"ForgetPasswordPanel"
);
TextField
forgetPasswordEmailField
=
forgetPasswordPanel
.
Q
<
TextField
>(
"ForgetPasswordEmailField"
);
Button
openForgetPasswordPanel
=
loginPage
.
rootVisualElement
.
Q
<
Button
>(
"OpenForgetPasswordPanel"
);
Button
closeForgetPasswordPanel
=
forgetPasswordPanel
.
Q
<
Button
>(
"CloseForgetPasswordPanel"
);
Button
sendEmail
=
forgetPasswordPanel
.
Q
<
Button
>(
"SendForgetPasswordEmail"
);
openForgetPasswordPanel
.
clicked
+=
()
=>
{
forgetPasswordPanel
.
style
.
display
=
DisplayStyle
.
Flex
;
forgetPasswordPanel
.
experimental
.
animation
.
Start
(
0
,
1
,
200
,
(
v
,
t
)
=>
{
forgetPasswordPanel
.
style
.
opacity
=
t
;
});
};
closeForgetPasswordPanel
.
clicked
+=
()
=>
{
forgetPasswordPanel
.
experimental
.
animation
.
Start
(
1
,
0
,
200
,
(
v
,
t
)
=>
{
forgetPasswordPanel
.
style
.
opacity
=
t
;
}).
OnCompleted
(()
=>
{
forgetPasswordPanel
.
style
.
display
=
DisplayStyle
.
None
;
});
};
sendEmail
.
clicked
+=
async
()
=>
{
sendEmail
.
SetEnabled
(
false
);
closeForgetPasswordPanel
.
SetEnabled
(
false
);
try
{
await
SupabaseAuthentication
.
Instance
.
ResetPasswordRequest
(
forgetPasswordEmailField
.
text
);
ShowUIMessage
.
Instance
.
ShowMessage
(
"تم إرسال بريد إعادة تعيين كلمة المرور، يرجى التحقق من بريدك الإلكتروني"
);
}
catch
(
Exception
ex
)
{
Debug
.
LogException
(
ex
);
}
sendEmail
.
SetEnabled
(
true
);
closeForgetPasswordPanel
.
SetEnabled
(
true
);
forgetPasswordPanel
.
experimental
.
animation
.
Start
(
1
,
0
,
200
,
(
v
,
t
)
=>
{
forgetPasswordPanel
.
style
.
opacity
=
t
;
}).
OnCompleted
(()
=>
{
forgetPasswordPanel
.
style
.
display
=
DisplayStyle
.
None
;
});
};
}
private
void
HandleUpdatePasswordPanel
()
{
VisualElement
updatePasswordPanel
=
loginPage
.
rootVisualElement
.
Q
<
VisualElement
>(
"UpdatePasswordPanel"
);
TextField
newPasswordField
=
updatePasswordPanel
.
Q
<
TextField
>(
"Password"
);
TextField
confirmPasswordField
=
updatePasswordPanel
.
Q
<
TextField
>(
"ConfirmPasswordField"
);
Button
closeUpdatePasswordPanel
=
updatePasswordPanel
.
Q
<
Button
>(
"CloseUpdatePasswordPanel"
);
Button
updatePassword
=
updatePasswordPanel
.
Q
<
Button
>(
"UpdatePassword"
);
updatePassword
.
clicked
+=
async
()
=>
{
if
(
newPasswordField
.
text
!=
confirmPasswordField
.
text
)
{
ShowUIMessage
.
Instance
.
ShowMessage
(
"كلمة المرور غير متطابقة"
);
return
;
}
if
(
string
.
IsNullOrWhiteSpace
(
newPasswordField
.
text
)
||
string
.
IsNullOrWhiteSpace
(
confirmPasswordField
.
text
))
{
ShowUIMessage
.
Instance
.
ShowMessage
(
"يرجى ملء جميع الحقول"
);
return
;
}
if
(
newPasswordField
.
text
.
Length
<
6
)
{
ShowUIMessage
.
Instance
.
ShowMessage
(
"كلمة المرور يجب أن تكون 6 أحرف على الأقل"
);
return
;
}
updatePassword
.
SetEnabled
(
false
);
try
{
await
SupabaseAuthentication
.
Instance
.
UpdatePassword
(
newPasswordField
.
text
);
ShowUIMessage
.
Instance
.
ShowMessage
(
"تم تحديث كلمة المرور بنجاح، يرجى تسجيل الدخول مرة أخرى"
);
}
catch
(
Exception
ex
)
{
Debug
.
LogException
(
ex
);
}
updatePassword
.
SetEnabled
(
true
);
updatePasswordPanel
.
experimental
.
animation
.
Start
(
1
,
0
,
200
,
(
v
,
t
)
=>
{
updatePasswordPanel
.
style
.
opacity
=
t
;
}).
OnCompleted
(()
=>
{
updatePasswordPanel
.
style
.
display
=
DisplayStyle
.
None
;
});
};
closeUpdatePasswordPanel
.
clicked
+=
()
=>
{
updatePasswordPanel
.
experimental
.
animation
.
Start
(
1
,
0
,
200
,
(
v
,
t
)
=>
{
updatePasswordPanel
.
style
.
opacity
=
t
;
}).
OnCompleted
(()
=>
{
updatePasswordPanel
.
style
.
display
=
DisplayStyle
.
None
;
});
};
}
void
HideInput
(
bool
status
)
{
VisualElement
Email
=
loginPage
.
rootVisualElement
.
Q
<
ScrollView
>(
"Register"
).
Q
<
VisualElement
>(
"Email"
);
...
...
My project/Assets/Plugins/Android/AndroidManifest.xml
View file @
838d310a
...
...
@@ -2,41 +2,24 @@
<manifest
xmlns:android=
"http://schemas.android.com/apk/res/android"
xmlns:tools=
"http://schemas.android.com/tools"
>
<application>
<activity
android:name=
"com.unity3d.player.UnityPlayerActivity"
android:theme=
"@style/UnityThemeSelector"
>
<intent-filter>
<action
android:name=
"android.intent.action.MAIN"
/>
<category
android:name=
"android.intent.category.LAUNCHER"
/>
</intent-filter>
<intent-filter
android:label=
"فتح شارح"
>
<action
android:name=
"android.intent.action.VIEW"
/>
<category
android:name=
"android.intent.category.DEFAULT"
/>
<category
android:name=
"android.intent.category.BROWSABLE"
/>
<data
android:scheme=
"sharh"
android:host=
"reset-password"
/>
</intent-filter>
<meta-data
android:name=
"unityplayer.UnityActivity"
android:value=
"true"
/>
</activity>
<application>
<activity
android:name=
"com.unity3d.player.UnityPlayerActivity"
android:theme=
"@style/UnityThemeSelector"
android:exported=
"true"
>
<intent-filter>
<action
android:name=
"android.intent.action.MAIN"
/>
<category
android:name=
"android.intent.category.LAUNCHER"
/>
</intent-filter>
<activity
android:name=
"com.unity3d.player.UnityPlayerGameActivity"
android:theme=
"@style/BaseUnityGameActivityTheme"
>
<intent-filter
>
<action
android:name=
"android.intent.action.MAIN
"
/>
<category
android:name=
"android.intent.category.LAUNCHER
"
/>
</intent-filter>
<intent-filter
android:label=
"فتح شارح"
>
<action
android:name=
"android.intent.action.VIEW"
/
>
<category
android:name=
"android.intent.category.DEFAULT"
/
>
<category
android:name=
"android.intent.category.BROWSABLE
"
/>
<data
android:scheme=
"sharh"
android:host=
"reset-password
"
/>
</intent-filter>
<intent-filter
android:label=
"فتح شارح"
>
<action
android:name=
"android.intent.action.VIEW"
/>
<category
android:name=
"android.intent.category.DEFAULT"
/>
<category
android:name=
"android.intent.category.BROWSABLE"
/>
<data
android:scheme=
"sharh"
android:host=
"reset-password"
/>
</intent-filter>
<meta-data
android:name=
"unityplayer.UnityActivity"
android:value=
"true"
/>
<meta-data
android:name=
"android.app.lib_name"
android:value=
"game"
/>
</activity>
</application>
</manifest>
<meta-data
android:name=
"unityplayer.UnityActivity"
android:value=
"true"
/>
</activity>
</application>
</manifest>
\ No newline at end of file
My project/ProjectSettings/ProjectSettings.asset
View file @
838d310a
...
...
@@ -262,7 +262,7 @@ PlayerSettings:
clonedFromGUID
:
3c72c65a16f0acb438eed22b8b16c24a
templatePackageId
:
com.unity.template.urp-blank@17.0.14
templateDefaultScene
:
Assets/Scenes/SampleScene.unity
useCustomMainManifest
:
0
useCustomMainManifest
:
1
useCustomLauncherManifest
:
0
useCustomMainGradleTemplate
:
0
useCustomLauncherGradleManifest
:
0
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment