hotfix: deal overcalled - #310
Merged
Merged
Conversation
bricefriha
added a commit
that referenced
this pull request
Jun 20, 2025
* fix - discord authentication (#199) * Flyout menu - reduce number of taps to sign in * App Shell - Make sure we fetch user data first then bind that data * Flyout - Fix Logout button * Arch - fetching data | setup a singleton to handle fetching structure and bind it to App Shell * Shell - Manage logout within the new mechanism * cleanup - Pages/views * Code base - Org | Organise the weak reference messages classes * News Page -| Setup singleton * Articlepage cleanup * About Page -| set as a singleton * Feeds page -| call as a singleton * Bookmarks - as for all give the singleton treatment * App Shell - remove OpenAuth reference * Android native - BakcPress | remove nullable reference types * fix: Custom feed not loading after navigating from an article (#202) * Fix - Feeds VM | make sure to manage `IsBusy` properly inside `UpdateFeeds()` * cleanup - Feed VM | Forgot to remove the previous setter of `IsBusy` * IOS properties - change Debug linker behaviour (#204) * BETA - Fix: crash sometimes experience on Launch (#205) * MCT - Regester TouchBehavior as a singleton * App.cs - Remove start DB on resume * Ressources - font references | fix the SemiBold reference (#206) * SQLite - update initialisation (#207) * fix: sqlite lockcrash (#208) * SQLite - update initialisation * SqLite - make sure we close the connection after we create the tables * Add sentry breadcrumbs to db creation process (#209) * SQLite - update initialisation * SqLite - make sure we close the connection after we create the tables * App - CreateWindow | add sentry breadcrumbs * imp: optimisation of local storage (#211) * SQLite - update initialisation * SqLite - make sure we close the connection after we create the tables * App - CreateWindow | add sentry breadcrumbs * Local Storage - SQLite | Create a class to genera DB actions * Local storage - general database | fix typo * Local storage - general sqlite DB | Implement the service accross the board * Feed - fix feed search * MainProg - DI | improve org of db singleton registration * Local storage - backup | create a service * fuck me sideways.... * Article Preview - share button | be more specific on the source (#213) * Fetcher - Sources | Utilise a static reference as Sources, as we only really set it once but need it all the time everywhere (#214) * Fix: bookmark status (#216) * Main feed - bookmark | fix the issue of the bookmark status not showing * Local storage - get bookmark | make sure that bookmarks are marked as IsSaved automatically * Local storage - main db | remove unecessary listing of artilces * Bookmark - db | Make sure the status is correctly set * feeds - view model | remove unused references (#217) * Fix: feed bookmark issue (#218) * article - bookmark | make sure to return the rescently added first * Fetcher - bookmarks | improve performance by caching all the bookmarks (as much as possible * Bookmark - caching | loas the bookmarks first thing * Fix: bookmark status not updating on main feed (#219) * Main feed - bookmark status | change the way we reload the article when receiving the bookmark message * Article Model - Change bookmark update * Hotfix: on start exception (#220) * App | Remove StartDb() * Change the way we update Sources * Fetcher.Sources | prevent nullable excepttions * fix: Fetcher - UpdateBackupSources | improve Error handling (#221) * App | Remove StartDb() * Change the way we update Sources * Fetcher.Sources | prevent nullable excepttions * Fetcher - UpdateBackupSources | improve Error handling * cleanup: stuff I forgot (#224) * xaml stuff * remove unused style declaration * Main Feed - Refresh DB | Make the try catch actually useful * Feat: notification setup (#225) * Add google services stuff to git ignore * Include google services files * deps | setup thomasgalliker's `Plugin.FirebasePushNotifications` * Update push notification setup * Apple Manifset - enable remote background thinggy * CI | use environment variable for package id * display packagename * CI/CD - iOS | install GoogleService-Info * CD - android | add secrets * d * CD - android | install google-services.json * prebuild - iOS | fix service tokens * Ci/CD - file google services installations * oops * d * Ci - update all * Notification - android | set the icon * for now let's just `hardcode` packagename (#226) * fix: android pre-build - fix environment variables (#228) * CD - android pre-build | fix environment variables * update xcode version * fix: pipelines xcode version (#229) * pipelines - dev | upgrade xcode * pipelines - prod | upgrade xcode * fix: notification setup (#230) * Ci - Adnroid | Check google services token * Prebuild - android | set the package name from the worflow * push notification - ios | fix setup * deps | Bump Plugin.FirebasePushNotifications to prerelease * Notiffication setup - Android | improve logging * fix: change the approach of Google Services credentials (#231) * CD - android | get google service token * forgot google_services_json * cd - android | Generate and import Google Services in their respective steps * CD - Android | change the way we generate google services * CD - iOS | generate google services * CI - main workflow | forgot google services PLIST * pre-build - android | remove unnecessary stuff * CI/CD - all | Remove redundant references of google services properties * CD - iOS | fix typo * same * workflow | update prod * s * fix - dev pipeline * dev deploy | remove * feat: notifications implement channels (#232) * Notifications - android | add channels * Notifications - Android | List channels * deps | downgrade `Plugin.FirebasePushNotifications` * workflow - android | set `changesNotSentForReview: true` * feat: notification navigation (#233) * Android - setup | enable `SingleTask` Launch Mode * Article - notification | handle navigation to the article * Notification - OnNotificationOpened | convert `articleId` to string * fix crash on notification nav * Article - notification | handle loading indicator better * Android - notification | improve permission request * Article - Notification | add option to handle action * cd-android.yml | unset changesNotSentForReview * Feat: notifications settings (#235) * Android - Notification | add `PostNotification` permission to the manifest * Notification Request | make it makes sense * Shell | add a totally empty settings page * Setting page | design * Settings page - open notification settings * notif - fix| OnNotificationOpened + OnNotificationAction -> escape null inputs (#238) * Hotfix: crash notification (#239) * notif - fix| OnNotificationOpened + OnNotificationAction -> escape null inputs * Notification - OnNotificationOpened | check `articleId` key exist * Notification - OnNotificationOpened | documentation * I'm a bit of an idiot * feat: deals page (#237) * Shell - Views | create and bind deals page * Styles - Add discount color * Deals page - Display deals * Article page - deals | change discount colour * Article page - deals | change size of the discount mark * SQLite - general DB | store deals * Deal Page | create a badge * General Storage | Complete `UpdateDeals` * Cleanp up | Article comparer * Deal page - Add loading indicator * Deal page -| reorder deals * feat: settings - deals (#242) * Settings - deal | enable/disable deal page * Settings - Deals | enable/disable deals on article page * Settings - vm | create a general method to handle updates * feat: add notif badges (#243) * fix: deals loadstuck (#244) * Deals page - fix | update deal `OnAppearing` * Deals page | order by expiring deals * random cleaup * hotfix: crash on notification opening (#246) * Article page - view Model | prevetn `System.ArgumentNullException` on deals * Article page - ViewModel | handle deals process exceptions * ArticleViewModel - constructor | check `Deals` before treating it * iOS - Tab badge | fix out of range issue (#248) * fix: News Feed doesn't reset when pressing its tab (#251) * AndroidShellRenderer - handler | declare it using genereci overload * Fix - android main feed reset | merge AndroidShellRenderer with TabbarBadgeRenderer * feat: dynamic time update (#253) * Converter - Time Span | reformat and clean up * Main feed - vm | create a method to refresh the timespan of the articles * Main Feed - On Resume | enhance the on resume behaviour * News page - update navigation stuff on resume * news page - view model | * Fetcher - ArticleExist | make sure to check for Bookmarks being null (#256) * fix: ios - UI settings tweaks (#257) * Settings Page - UI | Change title * Settings page - UI | tweak notification settings label * Settings page - view | format code * settings page - UI | improve the toggles * Settings page - UI | improve toggle colours * fix: DealPageSett (#258) * Settings Page - UI | Change title * Settings page - UI | tweak notification settings label * Settings page - view | format code * settings page - UI | improve the toggles * Settings page - UI | improve toggle colours * fix: DealPageSett * feat: display source image (#261) * UI - Article Preview | display the logo of the source if available * UI - Article Page | Add source image or badge as title closes #249 * fix: ios badge thread issue (#264) * ios - tab badge | run that on the main thread * ios - tab badge | UpdateBadge() error handling * fix: no internet connection handler (#265) Resolves #262 * fetcher - error handler | prevent internet connection related error from being reported * fcm - offline | notification setup disable if device offline * Fetcher - HTTP error handler | move the internet connection check at the top * fix: update deals on article navigation (#266) * App Shell - vm | make sure to reload the deals when we call `UpdateDeals()` * App Shell - navigation | update deal on each navigation * feat: deals - display time remaining until deals expire (#268) * Converters - | create a time until converter * Deals - page | display time until it expires * Deals page | improving time until display * TimeUntilConverter - correction * TimeUntilConverter - converters | improve * Deal page - expiration | dynamically change the colour * Converters - time until| correct a big mistake * App -| make sure to refresh the Deals when resuming the app * converters - TimeUntil | remove minutes when it's not relevant Resolves #260 * hotfix: time until converter (#269) * Deal page | ensure the timespan until end is not displayed after 30 days * Deal page - time until | improve colour indication * TimeUntilConverter - fix * feat: notification personalised feed (#271) * Feed - Notification | set up channel * Notification - Feed | NE registration * Notification entity | update * Notification - feed | include authentication when updating or creating a Notification Entity * UI - Edit Feed | notification options * notification - feed | get status * Edit page - UI | make it look a bit more similar to the settings page * Edit feed * App - fetcher | setup feed sub/unsub requests * App - Fetcher | fix sub/unsub feed * feed sub payload fix syntax * Data - Fetcher | Add a method to update the server when creating feed * feeds | allow auto synchronisation of feeds * Feed - edit | allow edit of subscription * Edit - feed | sync edit * Fetcher - feed create | prevent network related errors * misc - * notication - fix | if the update of NE fails add it as a new token * Update App/Models/Http/Responses/SubStatusRes.cs [JsonProperty("enabled")] * Update App/Platforms/Android/Notifications/NotificationChannelGamHub.cs * Edit feed page | fix UI * fix - threading | feeds view model * Main feed | feed creation upload * feeds| Cover offline mode update * Feeds - view model | improve multithreading * Deal - Badge | ensure the badge stays there as long as the deals are not acknowledged (#274) * Fix: error subscription not found (#275) * view models - edit feed | fix feed notification check * ViewModel - edit feed | compare Notification values * Deals - TimeUntilConverter | fix mishap when timespan is lower than a day (#277) * code base - debug setup | fix issue where the Discord auth wouldn't work (#279) * Deals - TimeUntilConverter| consider time zone (#280) * Data fetcher - Introduce a CheckFeasability() function (#282) * Deals page - cards | increase size of the discount badge (#284) * Feeds - delete | iOS fix crashes (#286) closes #285 * Android - Resources | update the accent colour (#287) * Imp: change inapp store reviews (#288) * Article page - | update store reviews criteria * acticle page - store review | change the threshold * format * update deps | Update MAUI controls and `Sentry` (#289) * Android - Status bar | update the colour (#291) * Article - page | reduce time limit until asking for review (#292) * feat: integrate deal reminders (#294) * notifications - channels | subscribe to `deal_reminder` * notification - deal reminder | handle navigation * fetcher - notification | ne setup * oooops * Notification - fecther | make sure we get the entity * Notification - deals | add the ability to schedule a notification for a deal * Settings - deals | add reminder option * model - deals | symplify `Navigate` * fix: MauiContext null issue (#295) * fix: notification entity setup (#296) * fix - notification setup| `SetupNotificationEntity` prevent nullable token * fix - notification setup | handle nullable result SetupNotificationEntity * App Shell - Notification | Change the way we are initially setting up the NE (#297) * Fix/ne issue (#298) * App Shell - Notification | Change the way we are initially setting up the NE * fix: fetcher - SetDealReminder | setup the Notification Entity if the id is empty * fnef * hotfix: I'm so stupid... * hotfix: handle notification entity rejection * hotfix: deadlock * downgrade Microsoft.Maui.Control to "9.0.30" (#300) * fix: feed page - feed rendering (#302) * downgrade Microsoft.Maui.Control to "9.0.30" * Feed page | remove spacing that prevents the feed list from scrolling proper * pages - Feed | fix empty list bug * dep - bump | MAUI.Controls * pages - feed | cleanup * Page - Feed | rebuild menu tab * pipeline: try xcode 16.4 馃馃徏 * pipeline: that was dev not pr... * Imp: remove deal access when offline (#306) * App Shell - offline mode | hide deal page when device offline * App Shell - offline | make sure deals reapear on resume * App Shell - offline | Refresh all the deals when coming back online * imp: change management of offline/online switch (#307) * Fetcher - remove the connection test before we try to determine if it's a connection related issue * News page - resume | reload * Deal - notification | prevent a crash when opening a reminder in fastboot (#308) * App Shell - fetching | reduce the amount of requests to get deals (#310)
bricefriha
added a commit
that referenced
this pull request
Jun 25, 2025
* fix - discord authentication (#199) * Flyout menu - reduce number of taps to sign in * App Shell - Make sure we fetch user data first then bind that data * Flyout - Fix Logout button * Arch - fetching data | setup a singleton to handle fetching structure and bind it to App Shell * Shell - Manage logout within the new mechanism * cleanup - Pages/views * Code base - Org | Organise the weak reference messages classes * News Page -| Setup singleton * Articlepage cleanup * About Page -| set as a singleton * Feeds page -| call as a singleton * Bookmarks - as for all give the singleton treatment * App Shell - remove OpenAuth reference * Android native - BakcPress | remove nullable reference types * fix: Custom feed not loading after navigating from an article (#202) * Fix - Feeds VM | make sure to manage `IsBusy` properly inside `UpdateFeeds()` * cleanup - Feed VM | Forgot to remove the previous setter of `IsBusy` * IOS properties - change Debug linker behaviour (#204) * BETA - Fix: crash sometimes experience on Launch (#205) * MCT - Regester TouchBehavior as a singleton * App.cs - Remove start DB on resume * Ressources - font references | fix the SemiBold reference (#206) * SQLite - update initialisation (#207) * fix: sqlite lockcrash (#208) * SQLite - update initialisation * SqLite - make sure we close the connection after we create the tables * Add sentry breadcrumbs to db creation process (#209) * SQLite - update initialisation * SqLite - make sure we close the connection after we create the tables * App - CreateWindow | add sentry breadcrumbs * imp: optimisation of local storage (#211) * SQLite - update initialisation * SqLite - make sure we close the connection after we create the tables * App - CreateWindow | add sentry breadcrumbs * Local Storage - SQLite | Create a class to genera DB actions * Local storage - general database | fix typo * Local storage - general sqlite DB | Implement the service accross the board * Feed - fix feed search * MainProg - DI | improve org of db singleton registration * Local storage - backup | create a service * fuck me sideways.... * Article Preview - share button | be more specific on the source (#213) * Fetcher - Sources | Utilise a static reference as Sources, as we only really set it once but need it all the time everywhere (#214) * Fix: bookmark status (#216) * Main feed - bookmark | fix the issue of the bookmark status not showing * Local storage - get bookmark | make sure that bookmarks are marked as IsSaved automatically * Local storage - main db | remove unecessary listing of artilces * Bookmark - db | Make sure the status is correctly set * feeds - view model | remove unused references (#217) * Fix: feed bookmark issue (#218) * article - bookmark | make sure to return the rescently added first * Fetcher - bookmarks | improve performance by caching all the bookmarks (as much as possible * Bookmark - caching | loas the bookmarks first thing * Fix: bookmark status not updating on main feed (#219) * Main feed - bookmark status | change the way we reload the article when receiving the bookmark message * Article Model - Change bookmark update * Hotfix: on start exception (#220) * App | Remove StartDb() * Change the way we update Sources * Fetcher.Sources | prevent nullable excepttions * fix: Fetcher - UpdateBackupSources | improve Error handling (#221) * App | Remove StartDb() * Change the way we update Sources * Fetcher.Sources | prevent nullable excepttions * Fetcher - UpdateBackupSources | improve Error handling * cleanup: stuff I forgot (#224) * xaml stuff * remove unused style declaration * Main Feed - Refresh DB | Make the try catch actually useful * Feat: notification setup (#225) * Add google services stuff to git ignore * Include google services files * deps | setup thomasgalliker's `Plugin.FirebasePushNotifications` * Update push notification setup * Apple Manifset - enable remote background thinggy * CI | use environment variable for package id * display packagename * CI/CD - iOS | install GoogleService-Info * CD - android | add secrets * d * CD - android | install google-services.json * prebuild - iOS | fix service tokens * Ci/CD - file google services installations * oops * d * Ci - update all * Notification - android | set the icon * for now let's just `hardcode` packagename (#226) * fix: android pre-build - fix environment variables (#228) * CD - android pre-build | fix environment variables * update xcode version * fix: pipelines xcode version (#229) * pipelines - dev | upgrade xcode * pipelines - prod | upgrade xcode * fix: notification setup (#230) * Ci - Adnroid | Check google services token * Prebuild - android | set the package name from the worflow * push notification - ios | fix setup * deps | Bump Plugin.FirebasePushNotifications to prerelease * Notiffication setup - Android | improve logging * fix: change the approach of Google Services credentials (#231) * CD - android | get google service token * forgot google_services_json * cd - android | Generate and import Google Services in their respective steps * CD - Android | change the way we generate google services * CD - iOS | generate google services * CI - main workflow | forgot google services PLIST * pre-build - android | remove unnecessary stuff * CI/CD - all | Remove redundant references of google services properties * CD - iOS | fix typo * same * workflow | update prod * s * fix - dev pipeline * dev deploy | remove * feat: notifications implement channels (#232) * Notifications - android | add channels * Notifications - Android | List channels * deps | downgrade `Plugin.FirebasePushNotifications` * workflow - android | set `changesNotSentForReview: true` * feat: notification navigation (#233) * Android - setup | enable `SingleTask` Launch Mode * Article - notification | handle navigation to the article * Notification - OnNotificationOpened | convert `articleId` to string * fix crash on notification nav * Article - notification | handle loading indicator better * Android - notification | improve permission request * Article - Notification | add option to handle action * cd-android.yml | unset changesNotSentForReview * Feat: notifications settings (#235) * Android - Notification | add `PostNotification` permission to the manifest * Notification Request | make it makes sense * Shell | add a totally empty settings page * Setting page | design * Settings page - open notification settings * notif - fix| OnNotificationOpened + OnNotificationAction -> escape null inputs (#238) * Hotfix: crash notification (#239) * notif - fix| OnNotificationOpened + OnNotificationAction -> escape null inputs * Notification - OnNotificationOpened | check `articleId` key exist * Notification - OnNotificationOpened | documentation * I'm a bit of an idiot * feat: deals page (#237) * Shell - Views | create and bind deals page * Styles - Add discount color * Deals page - Display deals * Article page - deals | change discount colour * Article page - deals | change size of the discount mark * SQLite - general DB | store deals * Deal Page | create a badge * General Storage | Complete `UpdateDeals` * Cleanp up | Article comparer * Deal page - Add loading indicator * Deal page -| reorder deals * feat: settings - deals (#242) * Settings - deal | enable/disable deal page * Settings - Deals | enable/disable deals on article page * Settings - vm | create a general method to handle updates * feat: add notif badges (#243) * fix: deals loadstuck (#244) * Deals page - fix | update deal `OnAppearing` * Deals page | order by expiring deals * random cleaup * hotfix: crash on notification opening (#246) * Article page - view Model | prevetn `System.ArgumentNullException` on deals * Article page - ViewModel | handle deals process exceptions * ArticleViewModel - constructor | check `Deals` before treating it * iOS - Tab badge | fix out of range issue (#248) * fix: News Feed doesn't reset when pressing its tab (#251) * AndroidShellRenderer - handler | declare it using genereci overload * Fix - android main feed reset | merge AndroidShellRenderer with TabbarBadgeRenderer * feat: dynamic time update (#253) * Converter - Time Span | reformat and clean up * Main feed - vm | create a method to refresh the timespan of the articles * Main Feed - On Resume | enhance the on resume behaviour * News page - update navigation stuff on resume * news page - view model | * Fetcher - ArticleExist | make sure to check for Bookmarks being null (#256) * fix: ios - UI settings tweaks (#257) * Settings Page - UI | Change title * Settings page - UI | tweak notification settings label * Settings page - view | format code * settings page - UI | improve the toggles * Settings page - UI | improve toggle colours * fix: DealPageSett (#258) * Settings Page - UI | Change title * Settings page - UI | tweak notification settings label * Settings page - view | format code * settings page - UI | improve the toggles * Settings page - UI | improve toggle colours * fix: DealPageSett * feat: display source image (#261) * UI - Article Preview | display the logo of the source if available * UI - Article Page | Add source image or badge as title closes #249 * fix: ios badge thread issue (#264) * ios - tab badge | run that on the main thread * ios - tab badge | UpdateBadge() error handling * fix: no internet connection handler (#265) Resolves #262 * fetcher - error handler | prevent internet connection related error from being reported * fcm - offline | notification setup disable if device offline * Fetcher - HTTP error handler | move the internet connection check at the top * fix: update deals on article navigation (#266) * App Shell - vm | make sure to reload the deals when we call `UpdateDeals()` * App Shell - navigation | update deal on each navigation * feat: deals - display time remaining until deals expire (#268) * Converters - | create a time until converter * Deals - page | display time until it expires * Deals page | improving time until display * TimeUntilConverter - correction * TimeUntilConverter - converters | improve * Deal page - expiration | dynamically change the colour * Converters - time until| correct a big mistake * App -| make sure to refresh the Deals when resuming the app * converters - TimeUntil | remove minutes when it's not relevant Resolves #260 * hotfix: time until converter (#269) * Deal page | ensure the timespan until end is not displayed after 30 days * Deal page - time until | improve colour indication * TimeUntilConverter - fix * feat: notification personalised feed (#271) * Feed - Notification | set up channel * Notification - Feed | NE registration * Notification entity | update * Notification - feed | include authentication when updating or creating a Notification Entity * UI - Edit Feed | notification options * notification - feed | get status * Edit page - UI | make it look a bit more similar to the settings page * Edit feed * App - fetcher | setup feed sub/unsub requests * App - Fetcher | fix sub/unsub feed * feed sub payload fix syntax * Data - Fetcher | Add a method to update the server when creating feed * feeds | allow auto synchronisation of feeds * Feed - edit | allow edit of subscription * Edit - feed | sync edit * Fetcher - feed create | prevent network related errors * misc - * notication - fix | if the update of NE fails add it as a new token * Update App/Models/Http/Responses/SubStatusRes.cs [JsonProperty("enabled")] * Update App/Platforms/Android/Notifications/NotificationChannelGamHub.cs * Edit feed page | fix UI * fix - threading | feeds view model * Main feed | feed creation upload * feeds| Cover offline mode update * Feeds - view model | improve multithreading * Deal - Badge | ensure the badge stays there as long as the deals are not acknowledged (#274) * Fix: error subscription not found (#275) * view models - edit feed | fix feed notification check * ViewModel - edit feed | compare Notification values * Deals - TimeUntilConverter | fix mishap when timespan is lower than a day (#277) * code base - debug setup | fix issue where the Discord auth wouldn't work (#279) * Deals - TimeUntilConverter| consider time zone (#280) * Data fetcher - Introduce a CheckFeasability() function (#282) * Deals page - cards | increase size of the discount badge (#284) * Feeds - delete | iOS fix crashes (#286) closes #285 * Android - Resources | update the accent colour (#287) * Imp: change inapp store reviews (#288) * Article page - | update store reviews criteria * acticle page - store review | change the threshold * format * update deps | Update MAUI controls and `Sentry` (#289) * Android - Status bar | update the colour (#291) * Article - page | reduce time limit until asking for review (#292) * feat: integrate deal reminders (#294) * notifications - channels | subscribe to `deal_reminder` * notification - deal reminder | handle navigation * fetcher - notification | ne setup * oooops * Notification - fecther | make sure we get the entity * Notification - deals | add the ability to schedule a notification for a deal * Settings - deals | add reminder option * model - deals | symplify `Navigate` * fix: MauiContext null issue (#295) * fix: notification entity setup (#296) * fix - notification setup| `SetupNotificationEntity` prevent nullable token * fix - notification setup | handle nullable result SetupNotificationEntity * App Shell - Notification | Change the way we are initially setting up the NE (#297) * Fix/ne issue (#298) * App Shell - Notification | Change the way we are initially setting up the NE * fix: fetcher - SetDealReminder | setup the Notification Entity if the id is empty * fnef * hotfix: I'm so stupid... * hotfix: handle notification entity rejection * hotfix: deadlock * downgrade Microsoft.Maui.Control to "9.0.30" (#300) * fix: feed page - feed rendering (#302) * downgrade Microsoft.Maui.Control to "9.0.30" * Feed page | remove spacing that prevents the feed list from scrolling proper * pages - Feed | fix empty list bug * dep - bump | MAUI.Controls * pages - feed | cleanup * Page - Feed | rebuild menu tab * pipeline: try xcode 16.4 馃馃徏 * pipeline: that was dev not pr... * Imp: remove deal access when offline (#306) * App Shell - offline mode | hide deal page when device offline * App Shell - offline | make sure deals reapear on resume * App Shell - offline | Refresh all the deals when coming back online * imp: change management of offline/online switch (#307) * Fetcher - remove the connection test before we try to determine if it's a connection related issue * News page - resume | reload * Deal - notification | prevent a crash when opening a reminder in fastboot (#308) * App Shell - fetching | reduce the amount of requests to get deals (#310) * Article page - menu | fix design issue (#312) * fix: change background colour partner badge (#314) * About page - partners | change bg colour * Deals page | partner bg * Chaneg certificate name * App Shell | make sure to refresh Deals when we open a notification (#316) * fix: badge not resetting (#317) * App - notification | Reset Badge * App Shell - notification | Set the badge count appropriately * feat: deals - DRM filtering (#318) * Fetcher -| setup call to get the platforms * Deal - filter | Create design of the popup * models - filter | update models for deal filters * Deal - filters | all set * Fetcher - Deals | filter from where we do the request * Deals - viewmodels | make sure to update the Platform selected state * Deals - filters | set null as a default state * Deal Filter - design | correct the DRM row (#319)
bricefriha
added a commit
that referenced
this pull request
Jul 1, 2025
* fix - discord authentication (#199) * Flyout menu - reduce number of taps to sign in * App Shell - Make sure we fetch user data first then bind that data * Flyout - Fix Logout button * Arch - fetching data | setup a singleton to handle fetching structure and bind it to App Shell * Shell - Manage logout within the new mechanism * cleanup - Pages/views * Code base - Org | Organise the weak reference messages classes * News Page -| Setup singleton * Articlepage cleanup * About Page -| set as a singleton * Feeds page -| call as a singleton * Bookmarks - as for all give the singleton treatment * App Shell - remove OpenAuth reference * Android native - BakcPress | remove nullable reference types * fix: Custom feed not loading after navigating from an article (#202) * Fix - Feeds VM | make sure to manage `IsBusy` properly inside `UpdateFeeds()` * cleanup - Feed VM | Forgot to remove the previous setter of `IsBusy` * IOS properties - change Debug linker behaviour (#204) * BETA - Fix: crash sometimes experience on Launch (#205) * MCT - Regester TouchBehavior as a singleton * App.cs - Remove start DB on resume * Ressources - font references | fix the SemiBold reference (#206) * SQLite - update initialisation (#207) * fix: sqlite lockcrash (#208) * SQLite - update initialisation * SqLite - make sure we close the connection after we create the tables * Add sentry breadcrumbs to db creation process (#209) * SQLite - update initialisation * SqLite - make sure we close the connection after we create the tables * App - CreateWindow | add sentry breadcrumbs * imp: optimisation of local storage (#211) * SQLite - update initialisation * SqLite - make sure we close the connection after we create the tables * App - CreateWindow | add sentry breadcrumbs * Local Storage - SQLite | Create a class to genera DB actions * Local storage - general database | fix typo * Local storage - general sqlite DB | Implement the service accross the board * Feed - fix feed search * MainProg - DI | improve org of db singleton registration * Local storage - backup | create a service * fuck me sideways.... * Article Preview - share button | be more specific on the source (#213) * Fetcher - Sources | Utilise a static reference as Sources, as we only really set it once but need it all the time everywhere (#214) * Fix: bookmark status (#216) * Main feed - bookmark | fix the issue of the bookmark status not showing * Local storage - get bookmark | make sure that bookmarks are marked as IsSaved automatically * Local storage - main db | remove unecessary listing of artilces * Bookmark - db | Make sure the status is correctly set * feeds - view model | remove unused references (#217) * Fix: feed bookmark issue (#218) * article - bookmark | make sure to return the rescently added first * Fetcher - bookmarks | improve performance by caching all the bookmarks (as much as possible * Bookmark - caching | loas the bookmarks first thing * Fix: bookmark status not updating on main feed (#219) * Main feed - bookmark status | change the way we reload the article when receiving the bookmark message * Article Model - Change bookmark update * Hotfix: on start exception (#220) * App | Remove StartDb() * Change the way we update Sources * Fetcher.Sources | prevent nullable excepttions * fix: Fetcher - UpdateBackupSources | improve Error handling (#221) * App | Remove StartDb() * Change the way we update Sources * Fetcher.Sources | prevent nullable excepttions * Fetcher - UpdateBackupSources | improve Error handling * cleanup: stuff I forgot (#224) * xaml stuff * remove unused style declaration * Main Feed - Refresh DB | Make the try catch actually useful * Feat: notification setup (#225) * Add google services stuff to git ignore * Include google services files * deps | setup thomasgalliker's `Plugin.FirebasePushNotifications` * Update push notification setup * Apple Manifset - enable remote background thinggy * CI | use environment variable for package id * display packagename * CI/CD - iOS | install GoogleService-Info * CD - android | add secrets * d * CD - android | install google-services.json * prebuild - iOS | fix service tokens * Ci/CD - file google services installations * oops * d * Ci - update all * Notification - android | set the icon * for now let's just `hardcode` packagename (#226) * fix: android pre-build - fix environment variables (#228) * CD - android pre-build | fix environment variables * update xcode version * fix: pipelines xcode version (#229) * pipelines - dev | upgrade xcode * pipelines - prod | upgrade xcode * fix: notification setup (#230) * Ci - Adnroid | Check google services token * Prebuild - android | set the package name from the worflow * push notification - ios | fix setup * deps | Bump Plugin.FirebasePushNotifications to prerelease * Notiffication setup - Android | improve logging * fix: change the approach of Google Services credentials (#231) * CD - android | get google service token * forgot google_services_json * cd - android | Generate and import Google Services in their respective steps * CD - Android | change the way we generate google services * CD - iOS | generate google services * CI - main workflow | forgot google services PLIST * pre-build - android | remove unnecessary stuff * CI/CD - all | Remove redundant references of google services properties * CD - iOS | fix typo * same * workflow | update prod * s * fix - dev pipeline * dev deploy | remove * feat: notifications implement channels (#232) * Notifications - android | add channels * Notifications - Android | List channels * deps | downgrade `Plugin.FirebasePushNotifications` * workflow - android | set `changesNotSentForReview: true` * feat: notification navigation (#233) * Android - setup | enable `SingleTask` Launch Mode * Article - notification | handle navigation to the article * Notification - OnNotificationOpened | convert `articleId` to string * fix crash on notification nav * Article - notification | handle loading indicator better * Android - notification | improve permission request * Article - Notification | add option to handle action * cd-android.yml | unset changesNotSentForReview * Feat: notifications settings (#235) * Android - Notification | add `PostNotification` permission to the manifest * Notification Request | make it makes sense * Shell | add a totally empty settings page * Setting page | design * Settings page - open notification settings * notif - fix| OnNotificationOpened + OnNotificationAction -> escape null inputs (#238) * Hotfix: crash notification (#239) * notif - fix| OnNotificationOpened + OnNotificationAction -> escape null inputs * Notification - OnNotificationOpened | check `articleId` key exist * Notification - OnNotificationOpened | documentation * I'm a bit of an idiot * feat: deals page (#237) * Shell - Views | create and bind deals page * Styles - Add discount color * Deals page - Display deals * Article page - deals | change discount colour * Article page - deals | change size of the discount mark * SQLite - general DB | store deals * Deal Page | create a badge * General Storage | Complete `UpdateDeals` * Cleanp up | Article comparer * Deal page - Add loading indicator * Deal page -| reorder deals * feat: settings - deals (#242) * Settings - deal | enable/disable deal page * Settings - Deals | enable/disable deals on article page * Settings - vm | create a general method to handle updates * feat: add notif badges (#243) * fix: deals loadstuck (#244) * Deals page - fix | update deal `OnAppearing` * Deals page | order by expiring deals * random cleaup * hotfix: crash on notification opening (#246) * Article page - view Model | prevetn `System.ArgumentNullException` on deals * Article page - ViewModel | handle deals process exceptions * ArticleViewModel - constructor | check `Deals` before treating it * iOS - Tab badge | fix out of range issue (#248) * fix: News Feed doesn't reset when pressing its tab (#251) * AndroidShellRenderer - handler | declare it using genereci overload * Fix - android main feed reset | merge AndroidShellRenderer with TabbarBadgeRenderer * feat: dynamic time update (#253) * Converter - Time Span | reformat and clean up * Main feed - vm | create a method to refresh the timespan of the articles * Main Feed - On Resume | enhance the on resume behaviour * News page - update navigation stuff on resume * news page - view model | * Fetcher - ArticleExist | make sure to check for Bookmarks being null (#256) * fix: ios - UI settings tweaks (#257) * Settings Page - UI | Change title * Settings page - UI | tweak notification settings label * Settings page - view | format code * settings page - UI | improve the toggles * Settings page - UI | improve toggle colours * fix: DealPageSett (#258) * Settings Page - UI | Change title * Settings page - UI | tweak notification settings label * Settings page - view | format code * settings page - UI | improve the toggles * Settings page - UI | improve toggle colours * fix: DealPageSett * feat: display source image (#261) * UI - Article Preview | display the logo of the source if available * UI - Article Page | Add source image or badge as title closes #249 * fix: ios badge thread issue (#264) * ios - tab badge | run that on the main thread * ios - tab badge | UpdateBadge() error handling * fix: no internet connection handler (#265) Resolves #262 * fetcher - error handler | prevent internet connection related error from being reported * fcm - offline | notification setup disable if device offline * Fetcher - HTTP error handler | move the internet connection check at the top * fix: update deals on article navigation (#266) * App Shell - vm | make sure to reload the deals when we call `UpdateDeals()` * App Shell - navigation | update deal on each navigation * feat: deals - display time remaining until deals expire (#268) * Converters - | create a time until converter * Deals - page | display time until it expires * Deals page | improving time until display * TimeUntilConverter - correction * TimeUntilConverter - converters | improve * Deal page - expiration | dynamically change the colour * Converters - time until| correct a big mistake * App -| make sure to refresh the Deals when resuming the app * converters - TimeUntil | remove minutes when it's not relevant Resolves #260 * hotfix: time until converter (#269) * Deal page | ensure the timespan until end is not displayed after 30 days * Deal page - time until | improve colour indication * TimeUntilConverter - fix * feat: notification personalised feed (#271) * Feed - Notification | set up channel * Notification - Feed | NE registration * Notification entity | update * Notification - feed | include authentication when updating or creating a Notification Entity * UI - Edit Feed | notification options * notification - feed | get status * Edit page - UI | make it look a bit more similar to the settings page * Edit feed * App - fetcher | setup feed sub/unsub requests * App - Fetcher | fix sub/unsub feed * feed sub payload fix syntax * Data - Fetcher | Add a method to update the server when creating feed * feeds | allow auto synchronisation of feeds * Feed - edit | allow edit of subscription * Edit - feed | sync edit * Fetcher - feed create | prevent network related errors * misc - * notication - fix | if the update of NE fails add it as a new token * Update App/Models/Http/Responses/SubStatusRes.cs [JsonProperty("enabled")] * Update App/Platforms/Android/Notifications/NotificationChannelGamHub.cs * Edit feed page | fix UI * fix - threading | feeds view model * Main feed | feed creation upload * feeds| Cover offline mode update * Feeds - view model | improve multithreading * Deal - Badge | ensure the badge stays there as long as the deals are not acknowledged (#274) * Fix: error subscription not found (#275) * view models - edit feed | fix feed notification check * ViewModel - edit feed | compare Notification values * Deals - TimeUntilConverter | fix mishap when timespan is lower than a day (#277) * code base - debug setup | fix issue where the Discord auth wouldn't work (#279) * Deals - TimeUntilConverter| consider time zone (#280) * Data fetcher - Introduce a CheckFeasability() function (#282) * Deals page - cards | increase size of the discount badge (#284) * Feeds - delete | iOS fix crashes (#286) closes #285 * Android - Resources | update the accent colour (#287) * Imp: change inapp store reviews (#288) * Article page - | update store reviews criteria * acticle page - store review | change the threshold * format * update deps | Update MAUI controls and `Sentry` (#289) * Android - Status bar | update the colour (#291) * Article - page | reduce time limit until asking for review (#292) * feat: integrate deal reminders (#294) * notifications - channels | subscribe to `deal_reminder` * notification - deal reminder | handle navigation * fetcher - notification | ne setup * oooops * Notification - fecther | make sure we get the entity * Notification - deals | add the ability to schedule a notification for a deal * Settings - deals | add reminder option * model - deals | symplify `Navigate` * fix: MauiContext null issue (#295) * fix: notification entity setup (#296) * fix - notification setup| `SetupNotificationEntity` prevent nullable token * fix - notification setup | handle nullable result SetupNotificationEntity * App Shell - Notification | Change the way we are initially setting up the NE (#297) * Fix/ne issue (#298) * App Shell - Notification | Change the way we are initially setting up the NE * fix: fetcher - SetDealReminder | setup the Notification Entity if the id is empty * fnef * hotfix: I'm so stupid... * hotfix: handle notification entity rejection * hotfix: deadlock * downgrade Microsoft.Maui.Control to "9.0.30" (#300) * fix: feed page - feed rendering (#302) * downgrade Microsoft.Maui.Control to "9.0.30" * Feed page | remove spacing that prevents the feed list from scrolling proper * pages - Feed | fix empty list bug * dep - bump | MAUI.Controls * pages - feed | cleanup * Page - Feed | rebuild menu tab * pipeline: try xcode 16.4 馃馃徏 * pipeline: that was dev not pr... * Imp: remove deal access when offline (#306) * App Shell - offline mode | hide deal page when device offline * App Shell - offline | make sure deals reapear on resume * App Shell - offline | Refresh all the deals when coming back online * imp: change management of offline/online switch (#307) * Fetcher - remove the connection test before we try to determine if it's a connection related issue * News page - resume | reload * Deal - notification | prevent a crash when opening a reminder in fastboot (#308) * App Shell - fetching | reduce the amount of requests to get deals (#310) * Article page - menu | fix design issue (#312) * fix: change background colour partner badge (#314) * About page - partners | change bg colour * Deals page | partner bg * Chaneg certificate name * App Shell | make sure to refresh Deals when we open a notification (#316) * fix: badge not resetting (#317) * App - notification | Reset Badge * App Shell - notification | Set the badge count appropriately * feat: deals - DRM filtering (#318) * Fetcher -| setup call to get the platforms * Deal - filter | Create design of the popup * models - filter | update models for deal filters * Deal - filters | all set * Fetcher - Deals | filter from where we do the request * Deals - viewmodels | make sure to update the Platform selected state * Deals - filters | set null as a default state * Deal Filter - design | correct the DRM row (#319) * Deal page - Browse | Navigate to SystemPreferred browser (#321) * feat: setup device instance (#324) * App. - | setup instance * app | i don't know why I left a new line there * fix: main feed - unnoticed button issues (#325) * Main feed - view model | be explicit in the WeakReferenceMessenger send * News - page | make sure the button is always centered * Fix: main feed - refresh button animation (#326) * Main feed - view model | be explicit in the WeakReferenceMessenger send * News - page | make sure the button is always centered * make sure the button is always centered * fix: news page - refresh button animation * fix: deals - filter result tend to be all over the place (#327) * feat: deal share button (#329) * deal page - share | add a share button * deal page - share | update design around the share button * Deal page - navigation | add the navigation command on the timstamp card and the label
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.