diff --git a/app/src/main/java/com/m2049r/xmrwallet/ReceiveFragment.java b/app/src/main/java/com/m2049r/xmrwallet/ReceiveFragment.java
index 73ea8812..15456492 100644
--- a/app/src/main/java/com/m2049r/xmrwallet/ReceiveFragment.java
+++ b/app/src/main/java/com/m2049r/xmrwallet/ReceiveFragment.java
@@ -19,6 +19,7 @@ package com.m2049r.xmrwallet;
 import android.content.Context;
 import android.graphics.Bitmap;
 import android.graphics.Canvas;
+import android.graphics.drawable.BitmapDrawable;
 import android.os.AsyncTask;
 import android.os.Bundle;
 import android.support.design.widget.TextInputLayout;
@@ -65,7 +66,8 @@ public class ReceiveFragment extends Fragment {
     private ExchangeView evAmount;
     private Button bPaymentId;
     private TextView tvQrCode;
-    private ImageButton qrCode;
+    private ImageView qrCode;
+    private ImageView qrCodeFull;
     private EditText etDummy;
     private ImageButton bCopyAddress;
 
@@ -90,8 +92,9 @@ public class ReceiveFragment extends Fragment {
         etPaymentId = (TextInputLayout) view.findViewById(R.id.etPaymentId);
         evAmount = (ExchangeView) view.findViewById(R.id.evAmount);
         bPaymentId = (Button) view.findViewById(R.id.bPaymentId);
-        qrCode = (ImageButton) view.findViewById(R.id.qrCode);
+        qrCode = (ImageView) view.findViewById(R.id.qrCode);
         tvQrCode = (TextView) view.findViewById(R.id.tvQrCode);
+        qrCodeFull = (ImageView) view.findViewById(R.id.qrCodeFull);
         etDummy = (EditText) view.findViewById(R.id.etDummy);
         bCopyAddress = (ImageButton) view.findViewById(R.id.bCopyAddress);
 
@@ -163,12 +166,23 @@ public class ReceiveFragment extends Fragment {
         qrCode.setOnClickListener(new View.OnClickListener() {
             @Override
             public void onClick(View v) {
-                if (checkPaymentId()) {
+                if (qrValid) {
+                    qrCodeFull.setImageBitmap(((BitmapDrawable) qrCode.getDrawable()).getBitmap());
+                    qrCodeFull.setVisibility(View.VISIBLE);
+                } else if (checkPaymentId()) {
                     evAmount.doExchange();
                 }
             }
         });
 
+        qrCodeFull.setOnClickListener(new View.OnClickListener() {
+            @Override
+            public void onClick(View v) {
+                qrCodeFull.setImageBitmap(null);
+                qrCodeFull.setVisibility(View.GONE);
+            }
+        });
+
         showProgress();
         clearQR();
 
@@ -197,7 +211,8 @@ public class ReceiveFragment extends Fragment {
         if (qrValid) {
             qrCode.setImageBitmap(null);
             qrValid = false;
-            tvQrCode.setVisibility(View.VISIBLE);
+            if (isLoaded)
+                tvQrCode.setVisibility(View.VISIBLE);
         }
     }
 
@@ -218,8 +233,11 @@ public class ReceiveFragment extends Fragment {
         generateQr();
     }
 
+    private boolean isLoaded = false;
+
     private void show(String name, String address) {
         Log.d(TAG, "name=" + name);
+        isLoaded = true;
         listenerCallback.setTitle(name);
         tvAddress.setText(address);
         etPaymentId.setEnabled(true);
diff --git a/app/src/main/res/layout/fragment_receive.xml b/app/src/main/res/layout/fragment_receive.xml
index c2dd9878..c945be96 100644
--- a/app/src/main/res/layout/fragment_receive.xml
+++ b/app/src/main/res/layout/fragment_receive.xml
@@ -1,50 +1,53 @@
 <?xml version="1.0" encoding="utf-8"?>
-<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:app="http://schemas.android.com/apk/res-auto"
-    xmlns:tools="http://schemas.android.com/tools"
+<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
     android:layout_width="match_parent"
-    android:layout_height="match_parent"
-    android:layout_margin="8dp"
-    android:orientation="vertical">
+    android:layout_height="match_parent">
 
-    <ProgressBar
-        android:id="@+id/pbProgress"
-        style="@style/Widget.AppCompat.ProgressBar.Horizontal"
+    <LinearLayout xmlns:app="http://schemas.android.com/apk/res-auto"
+        xmlns:tools="http://schemas.android.com/tools"
         android:layout_width="match_parent"
-        android:layout_height="wrap_content"
-        android:layout_marginBottom="4dp"
-        android:indeterminate="true"
-        android:visibility="gone" />
+        android:layout_height="match_parent"
+        android:layout_margin="8dp"
+        android:orientation="vertical">
 
-    <FrameLayout
-        android:layout_width="match_parent"
-        android:layout_height="wrap_content">
+        <ProgressBar
+            android:id="@+id/pbProgress"
+            style="@style/Widget.AppCompat.ProgressBar.Horizontal"
+            android:layout_width="match_parent"
+            android:layout_height="wrap_content"
+            android:layout_marginBottom="4dp"
+            android:indeterminate="true"
+            android:visibility="gone" />
+
+        <FrameLayout
+            android:layout_width="match_parent"
+            android:layout_height="wrap_content">
+
+            <TextView
+                style="@style/MoneroLabel.Heading"
+                android:layout_width="wrap_content"
+                android:layout_height="match_parent"
+                android:layout_gravity="center"
+                android:text="@string/generate_address_label" />
+
+            <ImageButton
+                android:id="@+id/bCopyAddress"
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:layout_gravity="end"
+                android:layout_marginEnd="80dp"
+                android:background="?android:selectableItemBackground"
+                android:enabled="false"
+                android:src="@drawable/ic_content_nocopy_black_24dp" />
+        </FrameLayout>
 
         <TextView
-            style="@style/MoneroLabel.Heading"
-            android:layout_width="wrap_content"
-            android:layout_height="match_parent"
-            android:layout_gravity="center"
-            android:text="@string/generate_address_label" />
-
-        <ImageButton
-            android:id="@+id/bCopyAddress"
-            android:layout_width="wrap_content"
+            android:id="@+id/tvAddress"
+            style="@style/MoneroText.Medium"
+            android:layout_width="match_parent"
             android:layout_height="wrap_content"
-            android:layout_gravity="end"
-            android:layout_marginEnd="80dp"
-            android:background="?android:selectableItemBackground"
-            android:enabled="false"
-            android:src="@drawable/ic_content_nocopy_black_24dp" />
-    </FrameLayout>
-
-    <TextView
-        android:id="@+id/tvAddress"
-        style="@style/MoneroText.Medium"
-        android:layout_width="match_parent"
-        android:layout_height="wrap_content"
-        android:textAlignment="center"
-        tools:text="9wZnnNctRc7RaLya1rxykH21dUwfQpNGmVLjAvkvqe7nKT2Mw848AJNGMunW5xjoSZ5vCCU3uDnUoVqSSHxzRtQBE3f6crx" />
+            android:textAlignment="center"
+            tools:text="9wZnnNctRc7RaLya1rxykH21dUwfQpNGmVLjAvkvqe7nKT2Mw848AJNGMunW5xjoSZ5vCCU3uDnUoVqSSHxzRtQBE3f6crx" />
 
         <com.m2049r.xmrwallet.layout.ExchangeView
             android:id="@+id/evAmount"
@@ -54,76 +57,85 @@
             android:layout_marginTop="16dp"
             android:orientation="vertical" />
 
-    <LinearLayout
-        android:layout_width="match_parent"
-        android:layout_height="wrap_content"
-        android:orientation="horizontal"
-        android:weightSum="10">
-
-        <android.support.design.widget.TextInputLayout
-            android:id="@+id/etPaymentId"
-            android:layout_width="0dp"
+        <LinearLayout
+            android:layout_width="match_parent"
             android:layout_height="wrap_content"
-            android:layout_weight="10"
-            app:counterEnabled="true"
-            app:counterMaxLength="16"
-            app:errorEnabled="true">
+            android:orientation="horizontal"
+            android:weightSum="10">
 
-            <android.support.design.widget.TextInputEditText
-                style="@style/MoneroEdit"
-                android:layout_width="match_parent"
+            <android.support.design.widget.TextInputLayout
+                android:id="@+id/etPaymentId"
+                android:layout_width="0dp"
                 android:layout_height="wrap_content"
-                android:backgroundTint="@color/moneroGray"
-                android:hint="@string/receive_paymentid_hint"
-                android:imeOptions="actionDone"
-                android:inputType="textMultiLine"
-                android:textAlignment="textStart" />
+                android:layout_weight="10"
+                app:counterEnabled="true"
+                app:counterMaxLength="16"
+                app:errorEnabled="true">
 
-        </android.support.design.widget.TextInputLayout>
+                <android.support.design.widget.TextInputEditText
+                    style="@style/MoneroEdit"
+                    android:layout_width="match_parent"
+                    android:layout_height="wrap_content"
+                    android:backgroundTint="@color/moneroGray"
+                    android:hint="@string/receive_paymentid_hint"
+                    android:imeOptions="actionDone"
+                    android:inputType="textMultiLine"
+                    android:textAlignment="textStart" />
 
-        <Button
-            android:id="@+id/bPaymentId"
-            style="@style/MoneroText.Button.Small"
-            android:layout_width="56dp"
-            android:layout_height="wrap_content"
-            android:layout_gravity="center"
-            android:layout_weight="0"
-            android:background="?android:selectableItemBackground"
-            android:drawableTop="@drawable/ic_settings_orange_24dp"
-            android:text="@string/send_generate_paymentid_hint"
-            android:textColor="@color/moneroGray"
-            android:visibility="visible" />
+            </android.support.design.widget.TextInputLayout>
 
+            <Button
+                android:id="@+id/bPaymentId"
+                style="@style/MoneroText.Button.Small"
+                android:layout_width="56dp"
+                android:layout_height="wrap_content"
+                android:layout_gravity="center"
+                android:layout_weight="0"
+                android:background="?android:selectableItemBackground"
+                android:drawableTop="@drawable/ic_settings_orange_24dp"
+                android:text="@string/send_generate_paymentid_hint"
+                android:textColor="@color/moneroGray"
+                android:visibility="visible" />
+
+        </LinearLayout>
+
+        <FrameLayout
+            android:layout_width="match_parent"
+            android:layout_height="match_parent">
+
+            <TextView
+                android:id="@+id/tvQrCode"
+                style="@style/MoneroFab"
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:layout_gravity="center"
+                android:drawablePadding="4dp"
+                android:drawableStart="@drawable/ic_info_outline_gray_24dp"
+                android:text="@string/label_receive_gen_qr_code"
+                android:textAlignment="center"
+                android:textSize="16sp"
+                android:visibility="invisible"/>
+
+            <ImageView
+                android:id="@+id/qrCode"
+                android:layout_width="match_parent"
+                android:layout_height="match_parent"
+                android:adjustViewBounds="true"
+                android:background="#00000000" />
+
+        </FrameLayout>
+
+        <EditText
+            android:id="@+id/etDummy"
+            android:layout_width="0dp"
+            android:layout_height="0dp" />
     </LinearLayout>
 
-    <FrameLayout
+    <ImageView
+        android:id="@+id/qrCodeFull"
         android:layout_width="match_parent"
-        android:layout_height="match_parent">
-
-        <TextView
-            android:id="@+id/tvQrCode"
-            style="@style/MoneroFab"
-            android:layout_width="wrap_content"
-            android:layout_height="wrap_content"
-            android:layout_gravity="center"
-            android:drawablePadding="4dp"
-            android:drawableStart="@drawable/ic_info_outline_gray_24dp"
-            android:text="@string/label_receive_gen_qr_code"
-            android:textAlignment="center"
-            android:textSize="16sp" />
-
-        <ImageButton
-            android:id="@+id/qrCode"
-            android:layout_width="match_parent"
-            android:layout_height="match_parent"
-            android:adjustViewBounds="true"
-            android:background="#00000000" />
-
-    </FrameLayout>
-
-    <EditText
-        android:id="@+id/etDummy"
-        android:layout_width="0dp"
-        android:layout_height="0dp" />
-
-</LinearLayout>
\ No newline at end of file
+        android:layout_height="match_parent"
+        android:adjustViewBounds="true"
+        android:background="#dd000000"
+        android:visibility="gone" />
+</FrameLayout>