git://git.nikiroo.be
/
fanfix.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
many fixes
[fanfix.git]
/
src
/
jexer
/
io
/
Screen.java
diff --git
a/src/jexer/io/Screen.java
b/src/jexer/io/Screen.java
index e3f72191809b73565397c98c8b8523c800b9f8be..1ecc4b185e0ee1eb8352211882c55bb39003d27b 100644
(file)
--- a/
src/jexer/io/Screen.java
+++ b/
src/jexer/io/Screen.java
@@
-183,7
+183,7
@@
public abstract class Screen {
/**
* When true, logical != physical.
*/
/**
* When true, logical != physical.
*/
- protected boolean dirty;
+ protected
volatile
boolean dirty;
/**
* Get dirty flag.
/**
* Get dirty flag.
@@
-225,7
+225,6
@@
public abstract class Screen {
* @return attributes at (x, y)
*/
public final CellAttributes getAttrXY(final int x, final int y) {
* @return attributes at (x, y)
*/
public final CellAttributes getAttrXY(final int x, final int y) {
-
CellAttributes attr = new CellAttributes();
if ((x >= 0) && (x < width) && (y >= 0) && (y < height)) {
attr.setTo(logical[x][y]);
CellAttributes attr = new CellAttributes();
if ((x >= 0) && (x < width) && (y >= 0) && (y < height)) {
attr.setTo(logical[x][y]);
@@
-591,12
+590,24
@@
public abstract class Screen {
}
/**
}
/**
- *
Force the screen to be fully cleared and redrawn on the next flush()
.
+ *
Clear the logical screen
.
*/
public final void clear() {
reset();
}
*/
public final void clear() {
reset();
}
+ /**
+ * Clear the physical screen.
+ */
+ public final void clearPhysical() {
+ dirty = true;
+ for (int row = 0; row < height; row++) {
+ for (int col = 0; col < width; col++) {
+ physical[col][row].reset();
+ }
+ }
+ }
+
/**
* Draw a box with a border and empty background.
*
/**
* Draw a box with a border and empty background.
*