* feat: add TargetPlatform `isDesktop` helper
Safe and convenient way to check if the current platform is a desktop platform.
* refactor: move window logic to separate class
This is much cleaner and better encapsulated. Sets up an area for
further window management in the future.
Does not try to initialize on mobile or web, which would crash.
* fix: isDesktop doc comment
* fix: set window title
Currently only displays "app_flowy" as the window title. This commit
sets the window title to "AppFlowy" as part of the init process.
* fix: Networktype null safety issues
Networktype returns nulls when the connectivity result is vpn resulting to null safety issues.
Implemented a case for when the connectivity result is vpn to resolve this issue.
* chore: update connectivity_plus_platform_interface ^1.2.2
* chore: update network state on Rust side
Co-authored-by: Lucas.Xu <lucas.xu@appflowy.io>