diff --git a/app/src/main/java/org/ntlab/acanthus_client/views/paint/PaintCanvas.java b/app/src/main/java/org/ntlab/acanthus_client/views/paint/PaintCanvas.java index 81ae629..4664123 100644 --- a/app/src/main/java/org/ntlab/acanthus_client/views/paint/PaintCanvas.java +++ b/app/src/main/java/org/ntlab/acanthus_client/views/paint/PaintCanvas.java @@ -139,7 +139,7 @@ if (0 < paths.size()) onTouched(paths.get(paths.size() - 1), x, y); - paintViewModel.setmStrokeNo(); + paintViewModel.setStrokeNo(); paintViewModel.addLocalStrokeRequest(x, y, Color.argb(pen.getAlpha(), pen.getRed(), pen.getGreen(), pen.getBlue()), pen.getThickness()); break; diff --git a/app/src/main/java/org/ntlab/acanthus_client/views/paint/PaintOnionCanvas.java b/app/src/main/java/org/ntlab/acanthus_client/views/paint/PaintOnionCanvas.java index 1e252c5..5bbffca 100644 --- a/app/src/main/java/org/ntlab/acanthus_client/views/paint/PaintOnionCanvas.java +++ b/app/src/main/java/org/ntlab/acanthus_client/views/paint/PaintOnionCanvas.java @@ -59,38 +59,40 @@ } //----------------------------------------------------------------- - // + // 描画 public void updateCanvas() { int cnt = 0; clearCanvas(); - for (Stroke s : paintViewModel.getPreStrokes().getValue()) { + if (!paintViewModel.getPreStrokes().getValue().equals(null)) { + for (Stroke s : paintViewModel.getPreStrokes().getValue()) { - Paint paint = new Paint(); - paint.setColor(Color.argb(Color.alpha(s.getColor()) / 4, Color.red(s.getColor()), Color.green(s.getColor()), Color.blue(s.getColor())));//色の指定 - paint.setStrokeWidth(s.getThickness()); - paint.setStyle(Paint.Style.STROKE); + Paint paint = new Paint(); + paint.setColor(Color.argb(Color.alpha(s.getColor()) / 4, Color.red(s.getColor()), Color.green(s.getColor()), Color.blue(s.getColor())));//色の指定 + paint.setStrokeWidth(s.getThickness()); + paint.setStyle(Paint.Style.STROKE); - paints.add(paint); - paths.add(new Path()); + paints.add(paint); + paths.add(new Path()); - for (Position p : s.getPositions()) { - if (cnt == 0) { - paths.get(paths.size() - 1).moveTo(p.getX(), p.getY()); - } else { - if (p.getX() != -1) - paths.get(paths.size() - 1).lineTo(p.getX(), p.getY()); + for (Position p : s.getPositions()) { + if (cnt == 0) { + paths.get(paths.size() - 1).moveTo(p.getX(), p.getY()); + } else { + if (p.getX() != -1) + paths.get(paths.size() - 1).lineTo(p.getX(), p.getY()); + } + invalidate(); + cnt++; } - invalidate(); - cnt++; + cnt = 0; } - cnt = 0; } } //----------------------------------------------------------------- - // + // 全消去 public void clearCanvas() { for (Path p : paths) p.reset(); invalidate(); diff --git a/app/src/main/java/org/ntlab/acanthus_client/views/paint/PaintViewModel.java b/app/src/main/java/org/ntlab/acanthus_client/views/paint/PaintViewModel.java index e179383..17abf24 100644 --- a/app/src/main/java/org/ntlab/acanthus_client/views/paint/PaintViewModel.java +++ b/app/src/main/java/org/ntlab/acanthus_client/views/paint/PaintViewModel.java @@ -64,7 +64,7 @@ //----------------------------------------------------------------- // strokeNoの発行 - public void setmStrokeNo() { + public void setStrokeNo() { Random random = new Random(); strokeNo = random.nextInt(1000000000); Log.d("TAG", "setmStrokeNo: " + mStrokeNo); diff --git a/app/src/main/java/org/ntlab/acanthus_client/views/paint/models/PaintConnectionModel.java b/app/src/main/java/org/ntlab/acanthus_client/views/paint/models/PaintConnectionModel.java index 378db8c..7f1a54a 100644 --- a/app/src/main/java/org/ntlab/acanthus_client/views/paint/models/PaintConnectionModel.java +++ b/app/src/main/java/org/ntlab/acanthus_client/views/paint/models/PaintConnectionModel.java @@ -137,7 +137,6 @@ if (1 < acanthus.getEditingPageNo()) { // 前のページが存在するときのみ - final StrokesRest strokesRest = retrofit.create(StrokesRest.class); //----------------------------------------------------------------- @@ -155,7 +154,7 @@ Log.d("a", "onFailure: "); } }); - } + } else preStrokes.setValue(null); } //-----------------------------------------------------------------