summaryrefslogtreecommitdiff
path: root/java/org/gnu/emacs/EmacsDrawLine.java
diff options
context:
space:
mode:
authorPo Lu <luangruo@yahoo.com>2023-09-18 10:59:55 +0800
committerPo Lu <luangruo@yahoo.com>2023-09-18 10:59:55 +0800
commit4e46df96510335c086a3764e002c99348e0e9624 (patch)
tree329373ead49ac6ff2a25e54dec65a70ca3297cb1 /java/org/gnu/emacs/EmacsDrawLine.java
parent514b70d5a0c73f5c0698494b323dc31dbc854d3a (diff)
Optimize damage region tracking under Android
* java/org/gnu/emacs/EmacsDrawLine.java (perform): * java/org/gnu/emacs/EmacsDrawRectangle.java (perform): Call damageRect with integer coordinates in lieu of consing a new Rect. * java/org/gnu/emacs/EmacsDrawable.java (damageRect) <IIII>: Declare a new variant of damageRect, accepting four integers designating the extents of the damage rectangle. * java/org/gnu/emacs/EmacsPixmap.java (damageRect) <IIII>: New stub. * java/org/gnu/emacs/EmacsView.java (damageRect) <IIII>: Implement this overloaded variant of damageRect. * java/org/gnu/emacs/EmacsWindow.java (damageRect): Ditto. * src/android.c (android_init_emacs_drawable) (android_init_emacs_window): Move search for `damageRect' to android_init_emacs_window. (android_damage_window): Call IIII variant of `damageRect' to avoid consing a new rectangle. Ameliorate dynamic method dispatch overhead.
Diffstat (limited to 'java/org/gnu/emacs/EmacsDrawLine.java')
-rw-r--r--java/org/gnu/emacs/EmacsDrawLine.java4
1 files changed, 1 insertions, 3 deletions
diff --git a/java/org/gnu/emacs/EmacsDrawLine.java b/java/org/gnu/emacs/EmacsDrawLine.java
index d367ccff9c4..be4da54c075 100644
--- a/java/org/gnu/emacs/EmacsDrawLine.java
+++ b/java/org/gnu/emacs/EmacsDrawLine.java
@@ -29,7 +29,6 @@ public final class EmacsDrawLine
perform (EmacsDrawable drawable, EmacsGC gc,
int x, int y, int x2, int y2)
{
- Rect rect;
Canvas canvas;
Paint paint;
int x0, x1, y0, y1;
@@ -48,7 +47,6 @@ public final class EmacsDrawLine
/* And the clip rectangle. */
paint = gc.gcPaint;
- rect = new Rect (x0, y0, x1, y1);
canvas = drawable.lockCanvas (gc);
if (canvas == null)
@@ -74,6 +72,6 @@ public final class EmacsDrawLine
/* DrawLine with clip mask not implemented; it is not used by
Emacs. */
- drawable.damageRect (rect);
+ drawable.damageRect (x0, y0, x1, y1);
}
}