[fenix] For https://github.com/mozilla-mobile/fenix/issues/4007 - Refactor AppShareVi...
commitaded4479be4c858d7ec2ba9d98147958aef74011
authorMugurell <petrumugurel@gmail.com>
Fri, 23 Aug 2019 10:54:03 +0000 (23 13:54 +0300)
committerJeff Boek <jeff@jeffboek.com>
Fri, 30 Aug 2019 01:12:50 +0000 (29 18:12 -0700)
tree03fdaf155486ad04d7e9caf69735bb9ff5f72206
parenteebe062468fe1617a89f5189a4d3b3a03fa6fdcb
[fenix] For https://github.com/mozilla-mobile/fenix/issues/4007 - Refactor AppShareView in standalone Share Views

In an effort to respect the initial MVI architecture I've broken the
complex `AppShareView` in 3 separate Views
- `ShareCloseView`
- `ShareToAccountDevicesView`
- `ShareToAppsView`
They are standalone Views (extending LayoutContainer) which know nothing about
each other or their parent and so offer their container the possibility to
order or display them in any form later.
According to the lib-state contract they are only responsible to
- inflate themselves in their injected containerView
- render a certain state (to be added in later commits)
- delegate all user interaction to an associated Interactor
18 files changed:
mobile/android/fenix/app/src/main/java/org/mozilla/fenix/share/AccountDevicesShareView.kt [deleted file]
mobile/android/fenix/app/src/main/java/org/mozilla/fenix/share/AppShareView.kt [deleted file]
mobile/android/fenix/app/src/main/java/org/mozilla/fenix/share/ShareCloseView.kt [new file with mode: 0644]
mobile/android/fenix/app/src/main/java/org/mozilla/fenix/share/ShareComponent.kt [deleted file]
mobile/android/fenix/app/src/main/java/org/mozilla/fenix/share/ShareFragment.kt
mobile/android/fenix/app/src/main/java/org/mozilla/fenix/share/ShareInteractor.kt [new file with mode: 0644]
mobile/android/fenix/app/src/main/java/org/mozilla/fenix/share/ShareToAccountDevicesView.kt [new file with mode: 0644]
mobile/android/fenix/app/src/main/java/org/mozilla/fenix/share/ShareToAppsView.kt [new file with mode: 0644]
mobile/android/fenix/app/src/main/java/org/mozilla/fenix/share/ShareUIView.kt [deleted file]
mobile/android/fenix/app/src/main/java/org/mozilla/fenix/share/listadapters/AccountDevicesAdapter.kt [new file with mode: 0644]
mobile/android/fenix/app/src/main/java/org/mozilla/fenix/share/listadapters/AppShareAdapter.kt [new file with mode: 0644]
mobile/android/fenix/app/src/main/java/org/mozilla/fenix/share/viewholders/AccountDeviceViewHolder.kt [new file with mode: 0644]
mobile/android/fenix/app/src/main/java/org/mozilla/fenix/share/viewholders/AppViewHolder.kt [new file with mode: 0644]
mobile/android/fenix/app/src/main/res/layout/component_share.xml [deleted file]
mobile/android/fenix/app/src/main/res/layout/fragment_share.xml
mobile/android/fenix/app/src/main/res/layout/share_close.xml [new file with mode: 0644]
mobile/android/fenix/app/src/main/res/layout/share_to_account_devices.xml [new file with mode: 0644]
mobile/android/fenix/app/src/main/res/layout/share_to_apps.xml [new file with mode: 0644]