mirror of
https://github.com/geometer/FBReaderJ.git
synced 2025-10-04 18:29:23 +02:00
text selection: added 'scrolling in selection mode'
plucker plugin is temporary commented git-svn-id: https://only.mawhrin.net/repos/FBReaderJ/trunk@857 6a642e6f-84f6-412e-ac94-c4a38d5a04b0
This commit is contained in:
parent
3354b9c134
commit
eb9012933c
3 changed files with 30 additions and 7 deletions
|
@ -40,7 +40,7 @@ public class PluginCollection {
|
|||
if (ourInstance == null) {
|
||||
ourInstance = new PluginCollection();
|
||||
ourInstance.myPlugins.add(new FB2Plugin());
|
||||
ourInstance.myPlugins.add(new PluckerPlugin());
|
||||
//ourInstance.myPlugins.add(new PluckerPlugin());
|
||||
//ourInstance->myPlugins.push_back(new DocBookPlugin());
|
||||
//ourInstance.myPlugins.add(new HtmlPlugin());
|
||||
/*ourInstance.myPlugins.add(new TxtPlugin());
|
||||
|
|
|
@ -22,6 +22,7 @@ package org.geometerplus.zlibrary.text.view.impl;
|
|||
import java.util.*;
|
||||
|
||||
import org.geometerplus.zlibrary.core.application.ZLApplication;
|
||||
import org.geometerplus.zlibrary.text.view.ZLTextView;
|
||||
|
||||
final class ZLTextSelectionModel {
|
||||
final static class BoundElement {
|
||||
|
@ -145,11 +146,11 @@ final class ZLTextSelectionModel {
|
|||
myStoredY = y;
|
||||
|
||||
if (!mySecondBound.Before.Exists) {
|
||||
//startSelectionScrolling(false);
|
||||
startSelectionScrolling(false);
|
||||
} else if (!mySecondBound.After.Exists) {
|
||||
//startSelectionScrolling(true);
|
||||
startSelectionScrolling(true);
|
||||
} else {
|
||||
//stopSelectionScrolling();
|
||||
stopSelectionScrolling();
|
||||
}
|
||||
|
||||
if (!oldRange.Left.equalsTo(newRange.Left) || !oldRange.Right.equalsTo(newRange.Right)) {
|
||||
|
@ -173,13 +174,13 @@ final class ZLTextSelectionModel {
|
|||
}
|
||||
|
||||
void deactivate() {
|
||||
//stopSelectionScrolling();
|
||||
stopSelectionScrolling();
|
||||
myIsActive = false;
|
||||
myDoUpdate = false;
|
||||
}
|
||||
|
||||
void clear() {
|
||||
//stopSelectionScrolling();
|
||||
stopSelectionScrolling();
|
||||
myIsEmpty = true;
|
||||
myIsActive = false;
|
||||
myDoUpdate = false;
|
||||
|
@ -270,4 +271,26 @@ final class ZLTextSelectionModel {
|
|||
bound.After.Exists = false;
|
||||
}
|
||||
}
|
||||
|
||||
private final Timer myTimer = new Timer();
|
||||
private TimerTask myScrollingTask;
|
||||
|
||||
private void startSelectionScrolling(final boolean forward) {
|
||||
stopSelectionScrolling();
|
||||
myScrollingTask = new TimerTask() {
|
||||
public void run() {
|
||||
myView.scrollPage(forward, ZLTextView.ScrollingMode.SCROLL_LINES, 1);
|
||||
myDoUpdate = true;
|
||||
myView.Application.refreshWindow();
|
||||
}
|
||||
};
|
||||
myTimer.schedule(myScrollingTask, 200, 400);
|
||||
}
|
||||
|
||||
private void stopSelectionScrolling() {
|
||||
if (myScrollingTask != null) {
|
||||
myScrollingTask.cancel();
|
||||
}
|
||||
myScrollingTask = null;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -360,7 +360,7 @@ public abstract class ZLTextViewImpl extends ZLTextView {
|
|||
}
|
||||
}
|
||||
|
||||
public void paint() {
|
||||
public synchronized void paint() {
|
||||
//android.os.Debug.startMethodTracing("/tmp/paint");
|
||||
preparePaintInfo();
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue