Skip to content

Releases: Gamhub-io/MobileApp

v1.7 - Android backward compatibility

08 Mar 14:44
13608fd

Choose a tag to compare

Pre-release
v1.7.7: hotfix/1 (#393)

* 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

* [iOS] #330 - news feed | prevent to trigger a refresh view when the scroll position is not all the way at the top (#331)

* patch - UX iOS | fix input issue with the deal input (#333)

* fix a merge confict

* deal - clean up

* Article page - deals | limit the mount of deals to load (#335)

* fetcher - register hook | add instance (#336)

* Imp: deal UX - improve navigation experience (#337)

* Deal - navigate | use Favourite browser

* Deal - push notification | change browser setting to External

* Deal - navigation | setting `TitleMode` Browser setting is useless as we do it externally now

* Deal - PN navigation | revert changes on `OnNotificationAction`

* Deal - navigation | remove title mode

* imp: Shell - | change the colours so it's more obvious when a tab is selected (#338)

* Fetcher - SaveSession | Prevent null related exceptions (#339)

* feat: introduce the template of gems (#340)

* flyout - header | design gem counter

* Gems top up page

* eat shit apple...

* App Store Shenanigans| Hide IAP from UI (#341)

* feat: [iOS] gems management, purchase, listing (#343)

* Gems - paywall | list all products

* Forgot the revenuecat package

* Gems - TopUp Page | Create the UI for the topup page

* gems - ui | only allow topup on iOS

* Gems - TopUp | handle payment processing

* Gems - TopUp | improve paywall design

* Gems - TopUp UI | improve colours

* Gems - fetch | get gems

* Article - hook | update registration

* Deal - hook | Add hooks to deals

* article - rewards | request gem rewards

* Deal - navigation | request reward

* Fetcher - Gems | manage user synchronization

* Billing - | exclude revenuecat for Android during the build

* App Shell - Flyout | Remove the gems from the header

* CI/CD - iOS | include revenuecat key in the workflow

* Deals - | display deal rewards

* Config - | Reorganise environement settings

* Fetcher - | get culture information

* Gems - management | geo block the feature

* converter - multipleToBool | clean up

* d

* App - Shell | utilise shell when calling the current page

* Deal - Rewards | show a popup for it

* App - instance | prevent instance ID from being setup twice

* iOS - prebuild fix| i forgot a ;

* fix: ios instance - resolve persistence (#344)

* Instance id - iOS | sort this out with the vendor id

* gem - rewards | fix

* securestorgate

* Gems - rewards popu preajustments

* Meta - improve debuging experience

* Shell - navigation | improve error handling (#345)

* Shell - naivation | improve error handling

* oops

* fix: gems purchase refresh (#346)

* gems - topup | fix fetching

* Gem - Top Up | add confirmation popup

* model - Gems Plan | symplify currency display

* yea tha's better

* fix: prevent useless calls to set deal reminders (#347)

* fetcher - set deal reminder | prevent calls to set reminder when permissions not enabled

* Fetcher - SetDealReminder | Check settings

* feat: generate an api key (#349)

* Debug - Constant | Fixing the issue with monitoring key

* Fetcher - headers | sign a API key

* ci/CD - constant | include API key

* fix: api key - correct the API signature (#350)

* Csign | correct the API signiture

* Csign - GenerateApiKey Debug | correct label in console

* feat: iOS - implement giveaways (#351)

* Fetcher - Giveaway | get the giveaways

* Giveaway page -| list all the current giveaway

* Fetcher - Giveaway | Request to enter

* Giveaway page | show when a giveaway is entered

* popups | Create a twochoice popup

* implement giveaway entry

* giveaway - UX | improve entering experience

* Giveaway - page | remove user giveaway

* Fetcher - | add GetWonGiveaways()

* Giveaways - wins | list all the wins

* Giveaway - wins | claim key

* Fetcher - giveaway | include dummies mode

* fix: giveaway - solve UX issues (#352)

* Giveaway - refresh on navigation

* Giveaway - page | imprve scrolling experience

* Converters | allow time until converter to expand beyond 30 days

* Giveaway | add balance

* Giveaway | create a dedicated popup for giveaway entries

* Giveaway - Update balance after entering a ga

* fix: giveaway UI (#353)

* Giveaway - wins | recenter the key when shown

* Giveaway - wins | remove the timespan

* giveaway - header looks shit

* fix: solve the gems top up UX (#354)

* Gems - topup | fix the pop up confirmation shinnanigans

* Gem - TopUp | tell users how to earn Gems

* hotfix: fetcher - hook | use cSign for the apikey (#355)

* fix: iOS - issues related to blank instance (#356)

* Fetcher - get headers | make sure to reissue the instance id if null

* Gems - | prevent nasty exceptions when GetGems() returns null

* feat: Android: purchases - Gems (#358)

* purchases - Gems  | enable revenuecat for Android

* Android - Gems | enable the balance for the gems

* Android - billing | add `com.android.vending.BILLING` (#360)

* feat: android - giveaways (#359)

* Android - Giveway | Enable Giveaway list

* Android - Giveway | missed a bit

* Giveaway VM | indent

* feat: Shell - add a donate tab (#361)

* Shell - Menu | add a donate option

* Shell - Menu | simplify support tab

* pipeline: config - add_revenue_cat_android_conf (#362)

* config - Android | update prebuild

* App config - pipeline | Update the script to include the revenue cat android key

* CD - android | fix `revenueCatApiKey_Android` casing (#363)

* switch SentryDNS

* Cd(fix): Android - prebuild script revenuecat key (#364)

* CD - android | fix `revenueCatApiKey_Android` casing

* fix- android prebuild | correct the Revenur cat part

* cd - android | switch runner

* cd - iOS | switch runner

* cd- android | switch back

* android - pre-build | missing ;

* fix wrong variable (#365)

* Chore(manifest): fix - android id declaration issue (#367)

* Make sure we exclude `com.google.android.gms.permission.AD_ID`

* dump `Kebechet.Maui.RevenueCat.InAppBilling`

* App -  Android OnStart | await when setingup an instance (#369)

* fix: data fetcher - nullability issues (#370)

* Data fetcher - | Standardize empty return values in Fetcher methods

* Data Fetcher | Ensure null safety in Fetcher methods

* Data Fetcher -| Refactor null check with null-conditional operator

* Fix(android): giveaway claims not working (#371)

* giveaway - android | Remove iOS-specific logic for fetching giveaway wins

* Giveaway - android | Remove iOS-specific code from Giveaway model

* Update RevenueCat package to version 5.3.2 (#373)

* Update Sentry.MAUI (#374)

* fix: connection failure of doom (#375)

* Add ResetHandler to Fetcher for HTTP client setup

* upgrade custard to allow customhandler

* use xcode 26

* fix: crash on gems load (#377)

* Shell | make GemEnable checks error proof

* CD change xcode version

* fix: revert XCODE_VERSION to 26.0 in dev-deploy.yml

* fix: update macOS runner version to 14 for iOS publish workflow

* fix: update Xcode setup action to version 1.6.0

* fix: update macOS runner version to 26 for iOS publish workflow

* Update cd-ios.yml

* cahnge mac runner

* Switch mac runner again

* force xcode to 26.0.1

* dev-deploy.yml force xcode 16.0.1

* Update prod-deploy.yml force xcode 16.0.1

* Update prod-deploy.ymlforce xcode 26.0.1

* Rotate Sentry DSN in MauiProgram.cs (#379)

Updated Sentry DSN for production environment.

* fix: app stuck on spashscreen on iOS 26.1 (#381)

* Upgrade Maui Controls deps

* upgrade to maui 10

* CommunityToolkit.Maui.Core -> 10.0.0

* Update .github/workflows/pr-deploy.yml to use .NET 10.0.100 and target net10.0

* Update XCODE_VERSION to 26.1.1 in PR deployment workflow

* Add step to install provisioning profiles in iOS deployment workflow

* Fix provisioning profile installation to handle multiple profiles

* Add keychain unlock and signing identity verification steps in iOS deployment workflow

* Update provisioning profile verification step to list profiles instead of checking signing identities

* Replace listing of provisioning profiles with inspection of a specific profile

* Refactor iOS build step to include codesigning provisioning and improve debug output

* Fix formatting in iOS app compilation step for improved readability

* Update codesign provisioning parameter to use profile paths instead of UUID

* Replace debug dotnet version step with provisioning output debug step

* Refactor provisioning profile handling to improve UUID extraction and streamline installation process

* Comment out provisioning profile installation step for debugging purposes

* Fix provisioning profile installation step to use profile paths instead of outputs

* Comment out provisioning profile installation and UUID extraction steps for debugging

* Refactor dotnet publish command to a single line for improved readability

* Add step to retrieve first provisioning profile for iOS app compilation

* Fix iOS app compilation by specifying the provisioning profile path directly

* Fix iOS app compilation command by adding quotes around the provisioning profile path

* Update iOS app compilation command to use CodesignKey instead of Provisioning Profile

* Refactor iOS app compilation command for improved readability

* We lost our fucking ways

* Enhance iOS code signing process by configuring keychain settings and verifying certificates

* Refine iOS keychain management in CI workflow by enhancing unlocking, search list configuration, and partition settings

* Improve iOS CI workflow by refining keychain unlocking process, enhancing certificate verification, and restructuring the app compilation command for clarity

* whatever that is

* Refactor iOS CI workflow by removing redundant keychain configuration steps and streamlining the app compilation command

* update to net 10 and xcode 26 (#382)

* fix: post maui10 issues (#383)

* upgrade popup iOS

* remove stroke from popup

* Replace Color with BackgroundColor in XAML files

Updated multiple XAML files to replace the `Color="Transparent"`
property with `BackgroundColor="Transparent"` for consistency
and to use the correct property for setting background color.
Also reformatted the `Image` element in `PurchaseGemsPopUp.xaml`
for better alignment without functional changes.

* Update Xcode version in dev-deploy workflow

* Update XCODE_VERSION to 26.2 in prod-deploy.yml

* Update Xcode version in PR deployment workflow

* hotfix: clear post-testing issues (#386)

* RemoveLoadingIndicator - prevent from throwing errors when the popup can't be found

* chore(deps) - update dependancies

* fix crash when region not found

* fix: post maui10 - UI android (#387)

* support for 16 KB Page Size Requirement

* android - enforce statusbar colour

* UI | News Page - apply a workaround for a MAUI 10 bug that prevents the tabbar colours to set proper

* hotfix: fix the crash on Android (#389)

* improve culture filtering

* Handle error better within `SetCultureInfo()`

* fetcher - HandleHttpException | ignore ssl errors

* fetcher - GetMainFeedUpdate | handle update

* misc - fix issue that prevent the articles already loaded to appear

* Fetcher - GetHeaders | improve error handling

* fetcher - format

* fetcher | Optimisation of header use

* fix deal tabbar colour (#390)

* chore(cleanup): love, death & deprecated methods (#391)

* update deprecated transitions

* cleanup unused references

* stuff stuff

* cleanup

* fix: bug putting feed into an endless loop reload (#392)

* FeedViewModel -| flag data as loaded after calling `RefreshFirstFeed`

* Feed - page & vm | overrall cleanup

Atlas 1.6

29 Jan 10:56
44494ac

Choose a tag to compare

We are incredibly excited to finally release this new 1.6 release. There was a lot of work put into it to handle the framework transition while offering great stability

General Changes:

  • Stability improvements
  • Linking deals we found related to articles

Bug fixes:

  • some snippets not appearing in articles
  • occasional crashes on custom feed

This version is the first version released officially after migrating the codebase from Xamarin to .NET MAUI.

Atlas 1.4

22 Jun 10:51
6bc7347

Choose a tag to compare

This update should be the last (semi) major update until the migration to .NET MAUI

Changes & implementation

  • Massive optimisation on the first load: Now, the first loading times are faster, and every single load time is similar in length
  • Discord Authentication: Users can now sign in via Discord (I'll let you figure out how, little easter egg 😉). This is useless for now besides being here for experimental purposes. More features will depend on it soon
  • Register trends: the app now registers trends that get accessed via the API /trends endpoint

Fixes

  • Solves occasional crashes on iOS
  • Prevent the app from asking for reviews every single minute (this was a bug that was hard to notice on our and we are sorry for that)

What's Changed

Full Changelog: 1.3...1.4

Atlas 1.3

29 Oct 11:35
07c6b22

Choose a tag to compare

Gamhub 1.3 [atlas] revolve around one big feature: custom feeds.
Allowing the user to create a feed from keywords they use in the search bar

Custom feeds features:

  • Saving a search: Now the search bar has a button on the right to allow the user to save it as a feed.
  • My Feeds page: This is where all the feeds the user saved belong.
  • Edit a feed: Users can edit the keywords or titles of each of their feeds
  • Remove feed: Users can also remove a feed from their list

Atlas 1.2

25 Aug 10:25
6203adf

Choose a tag to compare

New features:

  • Search: Users can now search for news on a particular topic
  • Text to speech: now the user can listen to an article instead of reading it
  • Huge overall optimisation

Atlas 1.0.2

27 Nov 15:41

Choose a tag to compare

Features

  • Added label for the bottom tab bar

Issues addressed

  • [Android] fixed issue related to light mode: users that had their device in light more had their navbar colour in white. Now it's the same colour as the tab bar.

Atlas 1.0.1

25 Sep 16:14

Choose a tag to compare

Features

  • Added offline mode: now the user can still use the app if his device is offline
  • Optimisation
  • Fix crashes

Issues addressed

  • Crashes when the app was offline
  • Some articles thumbnails didn't load