diff --git a/Lookify/app/src/main/AndroidManifest.xml b/Lookify/app/src/main/AndroidManifest.xml
index 8638220..36b798f 100644
--- a/Lookify/app/src/main/AndroidManifest.xml
+++ b/Lookify/app/src/main/AndroidManifest.xml
@@ -8,23 +8,32 @@
-
+
+
+ android:label="Rekomendacje"/>
-
-
+
+
-
-
-
+
+
+
diff --git a/Lookify/app/src/main/java/com/example/lookifyv2/Decode.java b/Lookify/app/src/main/java/com/example/lookifyv2/Decode.java
index 9a92403..7caf170 100644
--- a/Lookify/app/src/main/java/com/example/lookifyv2/Decode.java
+++ b/Lookify/app/src/main/java/com/example/lookifyv2/Decode.java
@@ -133,10 +133,16 @@ public class Decode extends AppCompatActivity {
finish();
}
if(reminder == 0) {
+
+ Toast.makeText(this, contents,
+ Toast.LENGTH_SHORT).show();
+
Intent intent_Results = new Intent(this, Results.class);
intent_Results.putExtra("decodedcode", contents);
startActivity(intent_Results);
finish();
+
+
}
}
diff --git a/Lookify/app/src/main/java/com/example/lookifyv2/DecodeFail.java b/Lookify/app/src/main/java/com/example/lookifyv2/DecodeFail.java
index 8c1c7fa..0df8c2c 100644
--- a/Lookify/app/src/main/java/com/example/lookifyv2/DecodeFail.java
+++ b/Lookify/app/src/main/java/com/example/lookifyv2/DecodeFail.java
@@ -3,6 +3,7 @@ package com.example.lookifyv2;
import androidx.appcompat.app.AppCompatActivity;
import android.content.Intent;
+import android.graphics.PorterDuff;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
@@ -18,7 +19,9 @@ public class DecodeFail extends AppCompatActivity {
setContentView(R.layout.activity_decode_fail);
button_tryagain = findViewById(R.id.try_again_button);
+ button_tryagain.getBackground().setColorFilter(0xFF67BAFF, PorterDuff.Mode.MULTIPLY);
button_backtomain = findViewById(R.id.backto_main_button);
+ button_backtomain.getBackground().setColorFilter(0xFF67BAFF, PorterDuff.Mode.MULTIPLY);
button_tryagain.setOnClickListener(new View.OnClickListener() {
@Override
diff --git a/Lookify/app/src/main/java/com/example/lookifyv2/Favourites.java b/Lookify/app/src/main/java/com/example/lookifyv2/Favourites.java
new file mode 100644
index 0000000..d4835a9
--- /dev/null
+++ b/Lookify/app/src/main/java/com/example/lookifyv2/Favourites.java
@@ -0,0 +1,123 @@
+package com.example.lookifyv2;
+
+import android.annotation.SuppressLint;
+import android.content.SharedPreferences;
+import android.os.AsyncTask;
+import android.os.Bundle;
+import android.view.View;
+import android.widget.TextView;
+
+import androidx.appcompat.app.AppCompatActivity;
+import androidx.recyclerview.widget.GridLayoutManager;
+import androidx.recyclerview.widget.RecyclerView;
+
+import com.google.common.collect.Lists;
+
+import org.json.JSONArray;
+import org.json.JSONException;
+import org.json.JSONObject;
+
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Map;
+
+import okhttp3.OkHttpClient;
+import okhttp3.Request;
+import okhttp3.Response;
+
+public class Favourites extends AppCompatActivity {
+
+ private List products;
+ private List favourites;
+ private RecyclerView recyclerView;
+ private GridLayoutManager gridLayout;
+ private FavouritesAdapter adapter;
+
+ @Override
+ protected void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ setContentView(R.layout.activity_favourites);
+
+ recyclerView = findViewById(R.id.favouriterecyclerview);
+ products = new ArrayList<>();
+ favourites = new ArrayList<>();
+ getProductsFromDB();
+
+ gridLayout = new GridLayoutManager(this, 2);
+ recyclerView.setLayoutManager(gridLayout);
+
+ adapter = new FavouritesAdapter(this, favourites);
+ recyclerView.setAdapter(adapter);
+ }
+
+ private void getProductsFromDB() {
+
+ @SuppressLint("StaticFieldLeak") AsyncTask asyncTask = new AsyncTask() {
+ @Override
+ protected Void doInBackground(Void... Void) {
+
+ OkHttpClient client = new OkHttpClient();
+ Request request = new Request.Builder().url("http://192.168.8.101/products.php?id=0").build();
+ try {
+ Response response = client.newCall(request).execute();
+
+ JSONArray array = new JSONArray(response.body().string());
+
+ for (int i = 0; i < array.length(); i++) {
+
+ JSONObject object = array.getJSONObject(i);
+
+ Product product = new Product(object.getInt("id"), object.getString("product_code"),
+ object.getString("product_name"), object.getString("product_image"),
+ object.getString("product_price"), object.getString("product_retailer"),
+ object.getString("product_colour"), object.getString("product_style"),
+ object.getString("product_collection"),
+ object.getString("product_type"), object.getString("product_sex"));
+
+ Favourites.this.products.add(product);
+ }
+
+ } catch (IOException e) {
+ e.printStackTrace();
+ } catch (JSONException e) {
+ e.printStackTrace();
+ }
+ return null;
+ }
+
+ @Override
+ protected void onPostExecute(Void aVoid) {
+ adapter.notifyDataSetChanged();
+
+ getFavourites();//funkcja
+ }
+ };
+ asyncTask.execute();
+ }
+
+ private void getFavourites() {
+ SharedPreferences pref = MyApplication.getInstance().getSharedPreferences("Favourites", 0);
+ Map codes = pref.getAll();
+ ArrayList codeslist = Lists.newArrayList(codes.keySet());
+ if (codeslist.size() == 0) {
+ TextView noproductsmessage = findViewById(R.id.nofavouritesmessage);
+ noproductsmessage.setVisibility(View.VISIBLE);
+ } else {
+ for (int i = 0; i < products.size(); i++) {
+ if (codeslist.size() != 0) {
+ for (int j = 0; j < codeslist.size(); j++) {
+ if (products.get(i).getproductCode().equals(codeslist.get(j))) {
+ favourites.add(products.get(i));
+ codeslist.remove(j);
+ break;
+ }
+ }
+ }
+ else{
+ break;
+ }
+ }
+ }
+ }
+}
diff --git a/Lookify/app/src/main/java/com/example/lookifyv2/FavouritesAdapter.java b/Lookify/app/src/main/java/com/example/lookifyv2/FavouritesAdapter.java
new file mode 100644
index 0000000..aa0a04a
--- /dev/null
+++ b/Lookify/app/src/main/java/com/example/lookifyv2/FavouritesAdapter.java
@@ -0,0 +1,134 @@
+package com.example.lookifyv2;
+
+import android.content.Context;
+import android.content.Intent;
+import android.content.SharedPreferences;
+import android.os.Bundle;
+import android.view.LayoutInflater;
+import android.view.MenuInflater;
+import android.view.MenuItem;
+import android.view.View;
+import android.view.ViewGroup;
+import android.widget.ImageView;
+import android.widget.PopupMenu;
+import android.widget.TextView;
+import android.widget.Toast;
+
+import androidx.recyclerview.widget.RecyclerView;
+
+import com.bumptech.glide.Glide;
+import com.google.common.collect.Lists;
+
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Map;
+
+public class FavouritesAdapter extends RecyclerView.Adapter{
+
+ private Context context;
+ private List products;
+
+ public FavouritesAdapter(Context context, List products) {
+ this.context = context;
+ this.products = products;
+ }
+
+ @Override
+ public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
+
+ View itemView = LayoutInflater.from(parent.getContext()).inflate(R.layout.card,parent,false);
+
+ return new ViewHolder(itemView);
+ }
+
+ @Override
+ public void onBindViewHolder(final ViewHolder holder, int position) {
+
+ Glide.with(context).load(products.get(position).getImageLink()).into(holder.imageView);
+ holder.productName.setText(products.get(position).getproductName());
+ holder.productPrice.setText(products.get(position).getproductPrice());
+ holder.productRetailer.setText(products.get(position).getproductRetailer());
+ }
+
+ @Override
+ public int getItemCount() {
+ return products.size();
+ }
+
+ public class ViewHolder extends RecyclerView.ViewHolder implements View.OnClickListener{
+
+ private ImageView imageView;
+ private TextView productName;
+ private TextView productPrice;
+ private TextView productRetailer;
+
+ private ViewHolder(View itemView) {
+ super(itemView);
+ imageView = itemView.findViewById(R.id.productimage);
+ imageView.setOnClickListener(this);
+ productName = itemView.findViewById(R.id.productname);
+ productPrice = itemView.findViewById(R.id.productprice);
+ productRetailer = itemView.findViewById(R.id.productretailer);
+ }
+
+ @Override
+ public void onClick(View v) {
+ int position = getAdapterPosition();
+ showPopupMenu(v,position);
+ }
+ }
+
+ private void showPopupMenu(View view, int position) {
+ PopupMenu popup = new PopupMenu(context, view);
+ MenuInflater inflater = popup.getMenuInflater();
+ inflater.inflate(R.menu.menu_favourites, popup.getMenu());
+ popup.setOnMenuItemClickListener(new MenuClickListener(position));
+ popup.show();
+ }
+
+ class MenuClickListener implements PopupMenu.OnMenuItemClickListener {
+ Integer pos;
+ private MenuClickListener(int pos) {
+ this.pos=pos;
+ }
+
+ @Override
+ public boolean onMenuItemClick(MenuItem menuItem) {
+ switch (menuItem.getItemId()) {
+ case R.id.action_remove:
+ SharedPreferences pref = MyApplication.getInstance().getSharedPreferences("Favourites", 0);
+ SharedPreferences.Editor editor = pref.edit();
+ editor.remove(products.get(pos).getproductCode());
+ editor.apply();
+
+ Intent intent_Favourites = new Intent(context, Favourites.class);
+ intent_Favourites.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
+ context.startActivity(intent_Favourites);
+
+ Toast.makeText(context, "Produkt \"" + products.get(pos).getproductName() + "\" został usunięty z Obserwowanych.",
+ Toast.LENGTH_SHORT).show();
+ return true;
+ case R.id.action_favourite_details:
+ Intent intent_Popup = new Intent(context, Popup.class).setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
+
+ Bundle bundle = new Bundle();
+
+ bundle.putSerializable("productimage", products.get(pos).getImageLink());
+ bundle.putSerializable("productcode", products.get(pos).getproductCode());
+ bundle.putSerializable("productname", products.get(pos).getproductName());
+ bundle.putSerializable("productprice", products.get(pos).getproductPrice());
+ bundle.putSerializable("productretailer", products.get(pos).getproductRetailer());
+ bundle.putSerializable("productcolour", products.get(pos).getproductColour());
+ bundle.putSerializable("productstyle", products.get(pos).getproductStyle());
+ bundle.putSerializable("productcollection", products.get(pos).getproductCollection());
+
+ intent_Popup.putExtras(bundle);
+
+ context.startActivity(intent_Popup);
+ return true;
+ default:
+ }
+ return false;
+ }
+ }
+}
diff --git a/Lookify/app/src/main/java/com/example/lookifyv2/MainActivity.java b/Lookify/app/src/main/java/com/example/lookifyv2/MainActivity.java
index d009694..fddd9f4 100644
--- a/Lookify/app/src/main/java/com/example/lookifyv2/MainActivity.java
+++ b/Lookify/app/src/main/java/com/example/lookifyv2/MainActivity.java
@@ -2,6 +2,7 @@ package com.example.lookifyv2;
import android.Manifest;
import android.content.Intent;
import android.content.pm.PackageManager;
+import android.graphics.PorterDuff;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
@@ -14,8 +15,7 @@ public class MainActivity extends AppCompatActivity {
Button button_scan;
Button button_help;
Button button_about;
-
- Button button_results;
+ Button button_favourites;
@Override
protected void onCreate(Bundle savedInstanceState) {
@@ -23,10 +23,13 @@ public class MainActivity extends AppCompatActivity {
setContentView(R.layout.activity_main);
button_scan = findViewById(R.id.scan_start_button);
+ button_scan.getBackground().setColorFilter(0xFF67BAFF, PorterDuff.Mode.MULTIPLY);
button_help = findViewById(R.id.help_start_button);
+ button_help.getBackground().setColorFilter(0xFF67BAFF, PorterDuff.Mode.MULTIPLY);
button_about = findViewById(R.id.about_start_button);
-
- button_results = findViewById(R.id.results_start_button);
+ button_about.getBackground().setColorFilter(0xFF67BAFF, PorterDuff.Mode.MULTIPLY);
+ button_favourites = findViewById(R.id.favourites_start_button);
+ button_favourites.getBackground().setColorFilter(0xFF67BAFF, PorterDuff.Mode.MULTIPLY);
button_scan.setOnClickListener(new View.OnClickListener() {
@Override
@@ -46,11 +49,10 @@ public class MainActivity extends AppCompatActivity {
openAbout();
}
});
-
- button_results.setOnClickListener(new View.OnClickListener() {
+ button_favourites.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
- openResults();
+ openFavourites();
}
});
@@ -87,10 +89,8 @@ public class MainActivity extends AppCompatActivity {
startActivity(intent_Scan);
}
- public void openResults(){
- Intent intent_Results = new Intent(this, Results.class);
- startActivity(intent_Results);
+ public void openFavourites(){
+ Intent intent_Favourites = new Intent(this, Favourites.class);
+ startActivity(intent_Favourites);
}
-
-
}
diff --git a/Lookify/app/src/main/java/com/example/lookifyv2/MyApplication.java b/Lookify/app/src/main/java/com/example/lookifyv2/MyApplication.java
new file mode 100644
index 0000000..ea86bca
--- /dev/null
+++ b/Lookify/app/src/main/java/com/example/lookifyv2/MyApplication.java
@@ -0,0 +1,19 @@
+package com.example.lookifyv2;
+
+import android.app.Application;
+
+//https://stackoverflow.com/a/12405879/12566206
+public class MyApplication extends Application {
+ private static MyApplication instance;
+
+ @Override
+ public void onCreate() {
+ super.onCreate();
+ instance = this;
+ }
+
+ public static MyApplication getInstance() {
+ return instance;
+ }
+}
+
diff --git a/Lookify/app/src/main/java/com/example/lookifyv2/Popup.java b/Lookify/app/src/main/java/com/example/lookifyv2/Popup.java
index 3298d78..3d08800 100644
--- a/Lookify/app/src/main/java/com/example/lookifyv2/Popup.java
+++ b/Lookify/app/src/main/java/com/example/lookifyv2/Popup.java
@@ -1,6 +1,8 @@
package com.example.lookifyv2;
import androidx.appcompat.app.AppCompatActivity;
+
+import android.graphics.PorterDuff;
import android.os.Bundle;
import android.text.Html;
import android.view.View;
@@ -40,6 +42,7 @@ public class Popup extends AppCompatActivity {
productCollection.setText(Html.fromHtml("" + "Kolekcja:" + " " + bundle.getSerializable("productcollection")));
button_back = findViewById(R.id.back_button);
+ button_back.getBackground().setColorFilter(0xFF67BAFF, PorterDuff.Mode.MULTIPLY);
button_back.setOnClickListener(new View.OnClickListener() {
@Override
diff --git a/Lookify/app/src/main/java/com/example/lookifyv2/ProductsAdapter.java b/Lookify/app/src/main/java/com/example/lookifyv2/ProductsAdapter.java
index ad16d4d..e9c27d7 100644
--- a/Lookify/app/src/main/java/com/example/lookifyv2/ProductsAdapter.java
+++ b/Lookify/app/src/main/java/com/example/lookifyv2/ProductsAdapter.java
@@ -3,6 +3,7 @@ package com.example.lookifyv2;
import androidx.appcompat.app.AppCompatActivity;
import android.content.Intent;
+import android.content.SharedPreferences;
import android.os.Bundle;
import android.content.Context;
import androidx.recyclerview.widget.RecyclerView;
@@ -18,8 +19,11 @@ import android.widget.TextView;
import android.widget.Toast;
import com.bumptech.glide.Glide;
+import com.google.common.collect.Lists;
+import java.util.ArrayList;
import java.util.List;
+import java.util.Map;
public class ProductsAdapter extends RecyclerView.Adapter{
@@ -94,8 +98,25 @@ public class ProductsAdapter extends RecyclerView.Adapter codes = pref.getAll();
+ ArrayList codeslist = Lists.newArrayList(codes.keySet());
+ int checker = 0;
+ for(int i = 0; i < codeslist.size(); i++){
+ if(products.get(pos).getproductCode().equals(codeslist.get(i))){
+ checker = -1;
+ Toast.makeText(context, "Ten produkt jest już obserwowany!",
+ Toast.LENGTH_SHORT).show();
+ break;
+ }
+ }
+ if(checker == 0){
+ editor.putBoolean(products.get(pos).getproductCode(), true);
+ editor.apply(); //commit?
+ Toast.makeText(context, "Produkt \"" + products.get(pos).getproductName() + "\" został dodany do Obserwowanych.",
+ Toast.LENGTH_SHORT).show();
+ }
return true;
case R.id.action_details:
Intent intent_Popup = new Intent(context, Popup.class).setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
diff --git a/Lookify/app/src/main/java/com/example/lookifyv2/Results.java b/Lookify/app/src/main/java/com/example/lookifyv2/Results.java
index c1bf979..13934cd 100644
--- a/Lookify/app/src/main/java/com/example/lookifyv2/Results.java
+++ b/Lookify/app/src/main/java/com/example/lookifyv2/Results.java
@@ -5,6 +5,8 @@ import androidx.appcompat.app.AppCompatActivity;
import android.annotation.SuppressLint;
import android.content.Context;
import android.content.Intent;
+import android.content.SharedPreferences;
+import android.graphics.PorterDuff;
import android.os.Bundle;
import android.os.AsyncTask;
@@ -108,7 +110,7 @@ public class Results extends AppCompatActivity {
protected void onPostExecute(Void aVoid) {
adapter.notifyDataSetChanged();
- /*
+
Bundle extras = getIntent().getExtras();
decodedCode = extras.getString("decodedcode");
@@ -124,8 +126,8 @@ public class Results extends AppCompatActivity {
startActivity(intent_DecodeFail);
finish();
}
-*/
- int foundPosition = 2; //TESTESTSRETSTETSTETT
+
+ //int foundPosition = 2; //TESTESTSRETSTETSTETT
ImageView imageView = findViewById(R.id.foundproductimage);
TextView foundProductPrice = findViewById(R.id.foundproductprice);
@@ -138,7 +140,9 @@ public class Results extends AppCompatActivity {
getFoundProductRetailer.setText(products.get(foundPosition).getproductRetailer());
button_favourite = findViewById(R.id.favourite_button);
+ button_favourite.getBackground().setColorFilter(0xFF67BAFF, PorterDuff.Mode.MULTIPLY);
button_details = findViewById(R.id.details_button);
+ button_details.getBackground().setColorFilter(0xFF67BAFF, PorterDuff.Mode.MULTIPLY);
final int finalFoundPosition = foundPosition;
button_favourite.setOnClickListener(new View.OnClickListener() {
@@ -180,11 +184,28 @@ public class Results extends AppCompatActivity {
}
public void addFavourite(Context context, int position){
- Toast.makeText(context, "Produkt \"" + products.get(position).getproductName() + "\" został dodany do obserwowanych",
- Toast.LENGTH_SHORT).show();
+ SharedPreferences pref = MyApplication.getInstance().getSharedPreferences("Favourites", 0);
+ SharedPreferences.Editor editor = pref.edit();
+ Map codes = pref.getAll();
+ ArrayList codeslist = Lists.newArrayList(codes.keySet());
+ int checker = 0;
+ for(int i = 0; i < codeslist.size(); i++){
+ if(products.get(position).getproductCode().equals(codeslist.get(i))){
+ checker = -1;
+ Toast.makeText(context, "Ten produkt jest już obserwowany!",
+ Toast.LENGTH_SHORT).show();
+ break;
+ }
+ }
+ if(checker == 0){
+ editor.putBoolean(products.get(position).getproductCode(), true);
+ editor.apply(); //commit?
+ Toast.makeText(context, "Produkt \"" + products.get(position).getproductName() + "\" został dodany do Obserwowanych.",
+ Toast.LENGTH_SHORT).show();
+ }
}
- public void getRecommendedProducts(int foundpos){
+ private void getRecommendedProducts(int foundpos){
HashMap ranking = new HashMap<>();
for(int i = 0; i < products.size(); i++) {
if (products.get(foundpos).getId() != products.get(i).getId()
@@ -221,8 +242,6 @@ public class Results extends AppCompatActivity {
List> rankinglist = Lists.newArrayList(ranking.entrySet());
Collections.sort(rankinglist, byMapValues.reverse());
-
-
for(int i = 0; i < 6; i++) {
productstop6.add(products.get(rankinglist.get(i).getKey()));
}
diff --git a/Lookify/app/src/main/res/layout/activity_about.xml b/Lookify/app/src/main/res/layout/activity_about.xml
index bf1466c..1211539 100644
--- a/Lookify/app/src/main/res/layout/activity_about.xml
+++ b/Lookify/app/src/main/res/layout/activity_about.xml
@@ -15,6 +15,7 @@
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.5"
app:layout_constraintStart_toStartOf="parent"
- app:layout_constraintTop_toTopOf="parent" />
+ app:layout_constraintTop_toTopOf="parent"
+ android:textColor="#000000"/>
\ No newline at end of file
diff --git a/Lookify/app/src/main/res/layout/activity_decode.xml b/Lookify/app/src/main/res/layout/activity_decode.xml
index ea9b055..0b09738 100644
--- a/Lookify/app/src/main/res/layout/activity_decode.xml
+++ b/Lookify/app/src/main/res/layout/activity_decode.xml
@@ -15,6 +15,7 @@
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.5"
app:layout_constraintStart_toStartOf="parent"
- app:layout_constraintTop_toTopOf="parent" />
+ app:layout_constraintTop_toTopOf="parent"
+ android:textColor="#000000"/>
\ No newline at end of file
diff --git a/Lookify/app/src/main/res/layout/activity_decode_fail.xml b/Lookify/app/src/main/res/layout/activity_decode_fail.xml
index abaf127..42f5335 100644
--- a/Lookify/app/src/main/res/layout/activity_decode_fail.xml
+++ b/Lookify/app/src/main/res/layout/activity_decode_fail.xml
@@ -28,7 +28,8 @@
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.5"
app:layout_constraintStart_toStartOf="parent"
- app:layout_constraintTop_toTopOf="parent" />
+ app:layout_constraintTop_toTopOf="parent"
+ android:textColor="#FFFFFF"/>
+ app:layout_constraintVertical_bias="0.0"
+ android:textColor="#FFFFFF"/>
\ No newline at end of file
diff --git a/Lookify/app/src/main/res/layout/activity_favourites.xml b/Lookify/app/src/main/res/layout/activity_favourites.xml
new file mode 100644
index 0000000..2e06748
--- /dev/null
+++ b/Lookify/app/src/main/res/layout/activity_favourites.xml
@@ -0,0 +1,31 @@
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Lookify/app/src/main/res/layout/activity_help.xml b/Lookify/app/src/main/res/layout/activity_help.xml
index e0ec685..c81001e 100644
--- a/Lookify/app/src/main/res/layout/activity_help.xml
+++ b/Lookify/app/src/main/res/layout/activity_help.xml
@@ -15,6 +15,7 @@
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.5"
app:layout_constraintStart_toStartOf="parent"
- app:layout_constraintTop_toTopOf="parent" />
+ app:layout_constraintTop_toTopOf="parent"
+ android:textColor="#000000"/>
\ No newline at end of file
diff --git a/Lookify/app/src/main/res/layout/activity_main.xml b/Lookify/app/src/main/res/layout/activity_main.xml
index dd370ca..ce77505 100644
--- a/Lookify/app/src/main/res/layout/activity_main.xml
+++ b/Lookify/app/src/main/res/layout/activity_main.xml
@@ -8,18 +8,33 @@
+ app:layout_constraintTop_toTopOf="parent"
+ android:textColor="#FFFFFF"/>
+
+
+ app:layout_constraintTop_toBottomOf="@+id/favourites_start_button"
+ app:layout_constraintVertical_bias="0.0"
+ android:textColor="#FFFFFF"/>
-
-
+ app:layout_constraintVertical_bias="0.0"
+ android:textColor="#FFFFFF"/>
\ No newline at end of file
diff --git a/Lookify/app/src/main/res/layout/activity_popup.xml b/Lookify/app/src/main/res/layout/activity_popup.xml
index bf75c5a..ca65ca1 100644
--- a/Lookify/app/src/main/res/layout/activity_popup.xml
+++ b/Lookify/app/src/main/res/layout/activity_popup.xml
@@ -115,7 +115,8 @@
app:layout_constraintHorizontal_bias="1.0"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
- app:layout_constraintVertical_bias="1.0" />
+ app:layout_constraintVertical_bias="1.0"
+ android:textColor="#FFFFFF"/>
diff --git a/Lookify/app/src/main/res/layout/activity_results.xml b/Lookify/app/src/main/res/layout/activity_results.xml
index 243d44f..1ac67d8 100644
--- a/Lookify/app/src/main/res/layout/activity_results.xml
+++ b/Lookify/app/src/main/res/layout/activity_results.xml
@@ -11,7 +11,7 @@
+ android:layout_weight="0.75">
+ app:layout_constraintTop_toTopOf="parent"
+ android:textColor="#000000"/>
+ app:layout_constraintTop_toBottomOf="@+id/header"
+ android:textColor="#000000"/>
+ app:layout_constraintTop_toBottomOf="@+id/foundproductname"
+ android:textColor="#000000"/>
+ app:layout_constraintTop_toBottomOf="@+id/foundproductretailer"
+ android:textColor="#000000"/>
+ app:layout_constraintTop_toTopOf="parent"
+ android:textColor="#FFFFFF"/>
+ app:layout_constraintEnd_toEndOf="parent"
+ android:textColor="#FFFFFF"/>
+ android:layout_weight="0.25"
+ android:background="#67BAFF">
+ android:textColor="#000000" />
diff --git a/Lookify/app/src/main/res/menu/menu_context.xml b/Lookify/app/src/main/res/menu/menu_context.xml
index 8770631..b816cd0 100644
--- a/Lookify/app/src/main/res/menu/menu_context.xml
+++ b/Lookify/app/src/main/res/menu/menu_context.xml
@@ -1,9 +1,8 @@
-