From a4c380501f47ae38c413c1515b5ba90b4ed9af7a Mon Sep 17 00:00:00 2001 From: Nikolay Pultsin Date: Sat, 20 Oct 2012 10:11:29 +0400 Subject: [PATCH] API setPageStart metod saves text position --- ChangeLog | 3 +++ .../android/fbreader/api/ApiServerImplementation.java | 1 + src/org/geometerplus/fbreader/fbreader/FBReaderApp.java | 8 +++++--- 3 files changed, 9 insertions(+), 3 deletions(-) diff --git a/ChangeLog b/ChangeLog index d580ce04d..e3e4612c5 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,6 @@ +===== 1.6.3 (Oct ??, 2012) ===== +* FBReader stores text position after setPageStart API method (useful for TTS plugin, code by Greg Kochaniak) + ===== 1.6.2 (Oct 13, 2012) ===== * Optimized animation speed * Fixes in database code diff --git a/src/org/geometerplus/android/fbreader/api/ApiServerImplementation.java b/src/org/geometerplus/android/fbreader/api/ApiServerImplementation.java index 4dcba187f..ab1d16c04 100644 --- a/src/org/geometerplus/android/fbreader/api/ApiServerImplementation.java +++ b/src/org/geometerplus/android/fbreader/api/ApiServerImplementation.java @@ -391,6 +391,7 @@ public class ApiServerImplementation extends ApiInterface.Stub implements Api, A public void setPageStart(TextPosition position) { myReader.getTextView().gotoPosition(position.ParagraphIndex, position.ElementIndex, position.CharIndex); myReader.getViewWidget().repaint(); + myReader.storePosition(); } public void highlightArea(TextPosition start, TextPosition end) { diff --git a/src/org/geometerplus/fbreader/fbreader/FBReaderApp.java b/src/org/geometerplus/fbreader/fbreader/FBReaderApp.java index 945ba2af9..8c3a9c7ce 100644 --- a/src/org/geometerplus/fbreader/fbreader/FBReaderApp.java +++ b/src/org/geometerplus/fbreader/fbreader/FBReaderApp.java @@ -245,9 +245,7 @@ public final class FBReaderApp extends ZLApplication { if (book != null) { onViewChanged(); - if (Model != null) { - Model.Book.storePosition(BookTextView.getStartCursor()); - } + storePosition(); BookTextView.setModel(null); FootnoteView.setModel(null); clearTextCaches(); @@ -362,6 +360,10 @@ public final class FBReaderApp extends ZLApplication { } public void onWindowClosing() { + storePosition(); + } + + public void storePosition() { if (Model != null && BookTextView != null) { Model.Book.storePosition(BookTextView.getStartCursor()); }