diff --git a/core/src/cz/nic/tablexia/screen/camera/CameraScreen.java b/core/src/cz/nic/tablexia/screen/camera/CameraScreen.java
index e506530dc7d2da7a66cde98b34661a5c91e93252..7e8d6e2ba4a81a6ada4265d5b89aab50560aafa4 100644
--- a/core/src/cz/nic/tablexia/screen/camera/CameraScreen.java
+++ b/core/src/cz/nic/tablexia/screen/camera/CameraScreen.java
@@ -58,7 +58,6 @@ public class CameraScreen extends AbstractTablexiaScreen<Void> implements Camera
 
     private int left, top, height, width, innerWidth, innerHeight;
     private String                  decodedData;
-    private boolean                 decoded;
     private boolean                 hasData;
     private TablexiaComponentDialog dialog;
     private Image                   glass;
@@ -66,7 +65,7 @@ public class CameraScreen extends AbstractTablexiaScreen<Void> implements Camera
     private boolean sizeIsSet = false;
 
 
-    public enum Mode {
+    private enum Mode {
         prepare,
         preview,
         done
@@ -83,8 +82,6 @@ public class CameraScreen extends AbstractTablexiaScreen<Void> implements Camera
         try {
             result = reader.decode(bitmap);
             decodedData = result.getText();
-            Log.debug(getClass().getSimpleName(), decodedData);
-            decoded = true;
             mode = Mode.done;
             Gdx.gl.glClearColor(0.0f, 0.0f, 0.0f, 1f);
             Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT | GL20.GL_DEPTH_BUFFER_BIT);
@@ -92,7 +89,7 @@ public class CameraScreen extends AbstractTablexiaScreen<Void> implements Camera
             Gdx.app.postRunnable(new Runnable() {
                 @Override
                 public void run() {
-                    showConfirmDialog();
+                    createSyncWork();
                 }
             });
         } catch (NotFoundException e) {
@@ -103,7 +100,7 @@ public class CameraScreen extends AbstractTablexiaScreen<Void> implements Camera
 
     @Override
     public boolean scanFinished() {
-        return decoded;
+        return decodedData!=null;
     }
 
     @Override
@@ -127,14 +124,14 @@ public class CameraScreen extends AbstractTablexiaScreen<Void> implements Camera
 
     @Override
     protected void screenPaused(Map<String, String> screenState) {
-        if (!decoded) {
+        if (!scanFinished()) {
             deviceCameraControl.stopPreviewAsync();
         }
     }
 
     @Override
     protected void screenResumed() {
-        if (!decoded) {
+        if (!scanFinished()) {
             deviceCameraControl.startPreviewAsync();
         }
     }
@@ -172,7 +169,7 @@ public class CameraScreen extends AbstractTablexiaScreen<Void> implements Camera
     }
 
     // TODO: 15.3.16 add proper dialog text 
-    private void showConfirmDialog() {
+    private void createSyncWork() {
         dialog = TablexiaComponentDialogFactory.getInstance().createYesNoDialog(
                 ApplicationTextManager.getInstance().getText(ApplicationTextManager.ApplicationTextsAssets.SYNC_QR_REQUEST_ON_DECODED_DIALOG_TEXT) + decodedData,
                 new ClickListener() {
@@ -217,7 +214,6 @@ public class CameraScreen extends AbstractTablexiaScreen<Void> implements Camera
                     @Override
                     public void clicked(InputEvent event, float x, float y) {
                         resetState();
-                        backToMenu();
                         super.clicked(event, x, y);
                     }
                 });
@@ -250,7 +246,7 @@ public class CameraScreen extends AbstractTablexiaScreen<Void> implements Camera
                                 new ClickListener() { //Try again
                                     @Override
                                     public void clicked(InputEvent event, float x, float y) {
-                                        showConfirmDialog();
+                                        createSyncWork();
                                     }
                                 }
                         ));
@@ -271,7 +267,6 @@ public class CameraScreen extends AbstractTablexiaScreen<Void> implements Camera
     private void resetState() {
         hasData = false;
         decodedData = null;
-        decoded = false;
         deviceCameraControl.prepareCameraAsync();
         mode = Mode.prepare;
     }
@@ -302,7 +297,7 @@ public class CameraScreen extends AbstractTablexiaScreen<Void> implements Camera
         if (deviceCameraControl == null) {
             deviceCameraControl = Tablexia.getDeviceCameraControl();
         }
-        if (!decoded) {
+        if (!scanFinished()) {
             if (deviceCameraControl.isPreviewReady()) {
                 mode = Mode.preview;
             } else {