From 7dec4af1137ee68ca7dd3e9050a6771437fc13f4 Mon Sep 17 00:00:00 2001 From: neslihanturan Date: Sun, 12 May 2019 11:08:35 +0300 Subject: [PATCH] Move constracts under contract package --- .../nearby/mvp/contract/NearbyContract.java | 24 +++++++++++++++++++ .../mvp/contract/NearbyListContract.java | 20 ++++++++++++++++ .../mvp/contract/NearbyMapContract.java | 23 ++++++++++++++++++ 3 files changed, 67 insertions(+) create mode 100644 app/src/main/java/fr/free/nrw/commons/nearby/mvp/contract/NearbyContract.java create mode 100644 app/src/main/java/fr/free/nrw/commons/nearby/mvp/contract/NearbyListContract.java create mode 100644 app/src/main/java/fr/free/nrw/commons/nearby/mvp/contract/NearbyMapContract.java diff --git a/app/src/main/java/fr/free/nrw/commons/nearby/mvp/contract/NearbyContract.java b/app/src/main/java/fr/free/nrw/commons/nearby/mvp/contract/NearbyContract.java new file mode 100644 index 000000000..582302b23 --- /dev/null +++ b/app/src/main/java/fr/free/nrw/commons/nearby/mvp/contract/NearbyContract.java @@ -0,0 +1,24 @@ +package fr.free.nrw.commons.nearby.mvp.contract; + +/** + * General View and UserAction methods are defined under + * this interface. This interface can be considered parent + * of both NearbyMapContract and NearbyListContract + */ +public interface NearbyContract { + + interface View { + void showPlaces(); + } + + interface UserActions { + void uploadImageGallery(); + void uploadImageCamera(); + void bookmarkItem(); + void getDirections(); + void seeWikidataItem(); + void seeWikipediaArticle(); + void seeCommonsFilePage(); + void rotateScreen(); + } +} diff --git a/app/src/main/java/fr/free/nrw/commons/nearby/mvp/contract/NearbyListContract.java b/app/src/main/java/fr/free/nrw/commons/nearby/mvp/contract/NearbyListContract.java new file mode 100644 index 000000000..4073b89c2 --- /dev/null +++ b/app/src/main/java/fr/free/nrw/commons/nearby/mvp/contract/NearbyListContract.java @@ -0,0 +1,20 @@ +package fr.free.nrw.commons.nearby.mvp.contract; + +import fr.free.nrw.commons.nearby.mvp.contract.NearbyContract; + +/** + * This interface defines specific View and UserActions for list + * part of the nearby. On the other hand both extends methods + * from parent View and UserActions where general methods are + * defined (in Nearby Contract) + */ +public interface NearbyListContract { + + interface View extends NearbyContract.View { + // Even if this is empty for now, I keep this one for code consistency + } + + interface UserActions extends NearbyContract.UserActions { + void expandItem(); + } +} diff --git a/app/src/main/java/fr/free/nrw/commons/nearby/mvp/contract/NearbyMapContract.java b/app/src/main/java/fr/free/nrw/commons/nearby/mvp/contract/NearbyMapContract.java new file mode 100644 index 000000000..122efe9c8 --- /dev/null +++ b/app/src/main/java/fr/free/nrw/commons/nearby/mvp/contract/NearbyMapContract.java @@ -0,0 +1,23 @@ +package fr.free.nrw.commons.nearby.mvp.contract; + +import fr.free.nrw.commons.nearby.mvp.contract.NearbyContract; + +/** + * This interface defines specific View and UserActions for map + * part of the nearby. On the other hand both extends methods + * from parent View and UserActions where general methods are + * defined (in Nearby Contract) + */ +public interface NearbyMapContract { + + interface View extends NearbyContract.View{ + void showSearchThisAreaButton(); + void showInformationBottomSheet(); + void showFABs(); + } + + interface UserActions extends NearbyContract.UserActions { + void searchThisArea(); + void recenterMap(); + } +}