[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
feature/android 1cae4648593 1/2: Update Android port
From: |
Po Lu |
Subject: |
feature/android 1cae4648593 1/2: Update Android port |
Date: |
Sun, 5 Mar 2023 07:17:24 -0500 (EST) |
branch: feature/android
commit 1cae464859341bfd5fc7d7ed4b503ef959af81dd
Author: Po Lu <luangruo@yahoo.com>
Commit: Po Lu <luangruo@yahoo.com>
Update Android port
* java/org/gnu/emacs/EmacsActivity.java (onCreate):
* java/org/gnu/emacs/EmacsContextMenu.java:
* java/org/gnu/emacs/EmacsDocumentsProvider.java (getMimeType):
* java/org/gnu/emacs/EmacsDrawLine.java (perform):
* java/org/gnu/emacs/EmacsDrawRectangle.java (perform):
* java/org/gnu/emacs/EmacsFillPolygon.java:
* java/org/gnu/emacs/EmacsFontDriver.java:
* java/org/gnu/emacs/EmacsHandleObject.java:
* java/org/gnu/emacs/EmacsInputConnection.java:
* java/org/gnu/emacs/EmacsMultitaskActivity.java
(EmacsMultitaskActivity):
* java/org/gnu/emacs/EmacsNative.java:
* java/org/gnu/emacs/EmacsNoninteractive.java
(EmacsNoninteractive, main):
* java/org/gnu/emacs/EmacsOpenActivity.java (EmacsOpenActivity)
(startEmacsClient):
* java/org/gnu/emacs/EmacsSdk7FontDriver.java:
* java/org/gnu/emacs/EmacsSdk8Clipboard.java:
* java/org/gnu/emacs/EmacsService.java (EmacsService, onCreate):
* java/org/gnu/emacs/EmacsView.java (EmacsView, onLayout):
* java/org/gnu/emacs/EmacsWindow.java (EmacsWindow):
* java/org/gnu/emacs/EmacsWindowAttachmentManager.java
(EmacsWindowAttachmentManager): Remove redundant includes.
Reorganize some functions around, remove duplicate `getLibDir'
functions, and remove unused local variables.
---
java/org/gnu/emacs/EmacsActivity.java | 13 ++++--
java/org/gnu/emacs/EmacsContextMenu.java | 3 --
java/org/gnu/emacs/EmacsDocumentsProvider.java | 4 +-
java/org/gnu/emacs/EmacsDrawLine.java | 5 ---
java/org/gnu/emacs/EmacsDrawRectangle.java | 1 -
java/org/gnu/emacs/EmacsFillPolygon.java | 1 -
java/org/gnu/emacs/EmacsFontDriver.java | 2 -
java/org/gnu/emacs/EmacsHandleObject.java | 3 --
java/org/gnu/emacs/EmacsInputConnection.java | 9 +---
java/org/gnu/emacs/EmacsMultitaskActivity.java | 6 ++-
java/org/gnu/emacs/EmacsNative.java | 2 -
java/org/gnu/emacs/EmacsNoninteractive.java | 18 +-------
java/org/gnu/emacs/EmacsOpenActivity.java | 20 +--------
java/org/gnu/emacs/EmacsSdk7FontDriver.java | 3 --
java/org/gnu/emacs/EmacsSdk8Clipboard.java | 4 +-
java/org/gnu/emacs/EmacsService.java | 49 ++++++++--------------
java/org/gnu/emacs/EmacsView.java | 7 ++--
java/org/gnu/emacs/EmacsWindow.java | 15 +++----
.../gnu/emacs/EmacsWindowAttachmentManager.java | 5 +--
19 files changed, 53 insertions(+), 117 deletions(-)
diff --git a/java/org/gnu/emacs/EmacsActivity.java
b/java/org/gnu/emacs/EmacsActivity.java
index 13002d5d0e5..692d8a14e22 100644
--- a/java/org/gnu/emacs/EmacsActivity.java
+++ b/java/org/gnu/emacs/EmacsActivity.java
@@ -24,18 +24,22 @@ import java.util.List;
import java.util.ArrayList;
import android.app.Activity;
+
import android.content.Context;
import android.content.Intent;
+
import android.os.Build;
import android.os.Bundle;
+
import android.util.Log;
+
import android.view.Menu;
import android.view.View;
import android.view.ViewTreeObserver;
import android.view.Window;
import android.view.WindowInsets;
import android.view.WindowInsetsController;
-import android.widget.FrameLayout.LayoutParams;
+
import android.widget.FrameLayout;
public class EmacsActivity extends Activity
@@ -187,6 +191,7 @@ public class EmacsActivity extends Activity
Intent intent;
View decorView;
ViewTreeObserver observer;
+ int matchParent;
/* See if Emacs should be started with -Q. */
intent = getIntent ();
@@ -194,8 +199,10 @@ public class EmacsActivity extends Activity
= intent.getBooleanExtra ("org.gnu.emacs.START_DASH_Q",
false);
- params = new FrameLayout.LayoutParams (LayoutParams.MATCH_PARENT,
- LayoutParams.MATCH_PARENT);
+ matchParent = FrameLayout.LayoutParams.MATCH_PARENT;
+ params
+ = new FrameLayout.LayoutParams (matchParent,
+ matchParent);
/* Make the frame layout. */
layout = new FrameLayout (this);
diff --git a/java/org/gnu/emacs/EmacsContextMenu.java
b/java/org/gnu/emacs/EmacsContextMenu.java
index d1a624e68d9..dec5e148a8e 100644
--- a/java/org/gnu/emacs/EmacsContextMenu.java
+++ b/java/org/gnu/emacs/EmacsContextMenu.java
@@ -25,7 +25,6 @@ import java.util.ArrayList;
import android.content.Context;
import android.content.Intent;
-import android.os.Bundle;
import android.os.Build;
import android.view.Menu;
@@ -35,8 +34,6 @@ import android.view.SubMenu;
import android.util.Log;
-import android.widget.PopupMenu;
-
/* Context menu implementation. This object is built from JNI and
describes a menu hiearchy. Then, `inflate' can turn it into an
Android menu, which can be turned into a popup (or other kind of)
diff --git a/java/org/gnu/emacs/EmacsDocumentsProvider.java
b/java/org/gnu/emacs/EmacsDocumentsProvider.java
index 901c3b909e0..f70da6040ff 100644
--- a/java/org/gnu/emacs/EmacsDocumentsProvider.java
+++ b/java/org/gnu/emacs/EmacsDocumentsProvider.java
@@ -160,6 +160,7 @@ public final class EmacsDocumentsProvider extends
DocumentsProvider
{
String name, extension, mime;
int extensionSeparator;
+ MimeTypeMap singleton;
if (file.isDirectory ())
return Document.MIME_TYPE_DIR;
@@ -170,8 +171,9 @@ public final class EmacsDocumentsProvider extends
DocumentsProvider
if (extensionSeparator > 0)
{
+ singleton = MimeTypeMap.getSingleton ();
extension = name.substring (extensionSeparator + 1);
- mime = MimeTypeMap.getSingleton().getMimeTypeFromExtension (extension);
+ mime = singleton.getMimeTypeFromExtension (extension);
if (mime != null)
return mime;
diff --git a/java/org/gnu/emacs/EmacsDrawLine.java
b/java/org/gnu/emacs/EmacsDrawLine.java
index 0b23138a36c..92e03c48e26 100644
--- a/java/org/gnu/emacs/EmacsDrawLine.java
+++ b/java/org/gnu/emacs/EmacsDrawLine.java
@@ -21,13 +21,9 @@ package org.gnu.emacs;
import java.lang.Math;
-import android.graphics.Bitmap;
import android.graphics.Canvas;
import android.graphics.Paint;
-import android.graphics.PorterDuff.Mode;
-import android.graphics.PorterDuffXfermode;
import android.graphics.Rect;
-import android.graphics.Xfermode;
public final class EmacsDrawLine
{
@@ -38,7 +34,6 @@ public final class EmacsDrawLine
Rect rect;
Canvas canvas;
Paint paint;
- int i;
/* TODO implement stippling. */
if (gc.fill_style == EmacsGC.GC_FILL_OPAQUE_STIPPLED)
diff --git a/java/org/gnu/emacs/EmacsDrawRectangle.java
b/java/org/gnu/emacs/EmacsDrawRectangle.java
index ce5e94e4a76..3bd5779c54e 100644
--- a/java/org/gnu/emacs/EmacsDrawRectangle.java
+++ b/java/org/gnu/emacs/EmacsDrawRectangle.java
@@ -33,7 +33,6 @@ public final class EmacsDrawRectangle
perform (EmacsDrawable drawable, EmacsGC gc,
int x, int y, int width, int height)
{
- int i;
Paint maskPaint, paint;
Canvas maskCanvas;
Bitmap maskBitmap;
diff --git a/java/org/gnu/emacs/EmacsFillPolygon.java
b/java/org/gnu/emacs/EmacsFillPolygon.java
index d55a0b3aca8..ea8324c543c 100644
--- a/java/org/gnu/emacs/EmacsFillPolygon.java
+++ b/java/org/gnu/emacs/EmacsFillPolygon.java
@@ -21,7 +21,6 @@ package org.gnu.emacs;
import java.lang.Math;
-import android.graphics.Bitmap;
import android.graphics.Canvas;
import android.graphics.Paint;
import android.graphics.Path;
diff --git a/java/org/gnu/emacs/EmacsFontDriver.java
b/java/org/gnu/emacs/EmacsFontDriver.java
index e142a3121d3..ff52899a897 100644
--- a/java/org/gnu/emacs/EmacsFontDriver.java
+++ b/java/org/gnu/emacs/EmacsFontDriver.java
@@ -19,8 +19,6 @@ along with GNU Emacs. If not, see
<https://www.gnu.org/licenses/>. */
package org.gnu.emacs;
-import java.util.List;
-
import android.os.Build;
/* This code is mostly unused. See sfntfont-android.c for the code
diff --git a/java/org/gnu/emacs/EmacsHandleObject.java
b/java/org/gnu/emacs/EmacsHandleObject.java
index a57a3bbdfa9..5b889895337 100644
--- a/java/org/gnu/emacs/EmacsHandleObject.java
+++ b/java/org/gnu/emacs/EmacsHandleObject.java
@@ -19,9 +19,6 @@ along with GNU Emacs. If not, see
<https://www.gnu.org/licenses/>. */
package org.gnu.emacs;
-import java.util.List;
-import java.util.ArrayList;
-import java.lang.Object;
import java.lang.IllegalStateException;
/* This defines something that is a so-called ``handle''. Handles
diff --git a/java/org/gnu/emacs/EmacsInputConnection.java
b/java/org/gnu/emacs/EmacsInputConnection.java
index ed64c368857..7b40fcff99e 100644
--- a/java/org/gnu/emacs/EmacsInputConnection.java
+++ b/java/org/gnu/emacs/EmacsInputConnection.java
@@ -23,18 +23,13 @@ import android.view.inputmethod.BaseInputConnection;
import android.view.inputmethod.CompletionInfo;
import android.view.inputmethod.ExtractedText;
import android.view.inputmethod.ExtractedTextRequest;
-import android.view.inputmethod.InputMethodManager;
-import android.view.inputmethod.SurroundingText;
import android.view.inputmethod.TextSnapshot;
import android.view.KeyEvent;
-import android.text.Editable;
-
import android.util.Log;
-/* Android input methods, take number six.
-
- See EmacsEditable for more details. */
+/* Android input methods, take number six. See textconv.c for more
+ details; this is more-or-less a thin wrapper around that file. */
public final class EmacsInputConnection extends BaseInputConnection
{
diff --git a/java/org/gnu/emacs/EmacsMultitaskActivity.java
b/java/org/gnu/emacs/EmacsMultitaskActivity.java
index dbdc99a3559..b1c48f03fba 100644
--- a/java/org/gnu/emacs/EmacsMultitaskActivity.java
+++ b/java/org/gnu/emacs/EmacsMultitaskActivity.java
@@ -19,7 +19,11 @@ along with GNU Emacs. If not, see
<https://www.gnu.org/licenses/>. */
package org.gnu.emacs;
-public class EmacsMultitaskActivity extends EmacsActivity
+/* This class only exists because EmacsActivity is already defined as
+ an activity, and the system wants a new class in order to define a
+ new activity. */
+
+public final class EmacsMultitaskActivity extends EmacsActivity
{
}
diff --git a/java/org/gnu/emacs/EmacsNative.java
b/java/org/gnu/emacs/EmacsNative.java
index b1205353090..38370d60727 100644
--- a/java/org/gnu/emacs/EmacsNative.java
+++ b/java/org/gnu/emacs/EmacsNative.java
@@ -19,8 +19,6 @@ along with GNU Emacs. If not, see
<https://www.gnu.org/licenses/>. */
package org.gnu.emacs;
-import java.lang.System;
-
import android.content.res.AssetManager;
import android.view.inputmethod.ExtractedText;
import android.view.inputmethod.ExtractedTextRequest;
diff --git a/java/org/gnu/emacs/EmacsNoninteractive.java
b/java/org/gnu/emacs/EmacsNoninteractive.java
index f365037b311..aaba74d877c 100644
--- a/java/org/gnu/emacs/EmacsNoninteractive.java
+++ b/java/org/gnu/emacs/EmacsNoninteractive.java
@@ -46,21 +46,6 @@ import java.lang.reflect.Method;
@SuppressWarnings ("unchecked")
public final class EmacsNoninteractive
{
- private static String
- getLibraryDirectory (Context context)
- {
- int apiLevel;
-
- apiLevel = Build.VERSION.SDK_INT;
-
- if (apiLevel >= Build.VERSION_CODES.GINGERBREAD)
- return context.getApplicationInfo().nativeLibraryDir;
- else if (apiLevel >= Build.VERSION_CODES.DONUT)
- return context.getApplicationInfo().dataDir + "/lib";
-
- return "/data/data/" + context.getPackageName() + "/lib";
- }
-
public static void
main (String[] args)
{
@@ -188,7 +173,7 @@ public final class EmacsNoninteractive
/* Now configure Emacs. The class path should already be set. */
filesDir = context.getFilesDir ().getCanonicalPath ();
- libDir = getLibraryDirectory (context);
+ libDir = EmacsService.getLibraryDirectory (context);
cacheDir = context.getCacheDir ().getCanonicalPath ();
}
catch (Exception e)
@@ -198,6 +183,7 @@ public final class EmacsNoninteractive
System.err.println ("and that Emacs needs adjustments in order to");
System.err.println ("obtain required system internal resources.");
System.err.println ("Please report this bug to bug-gnu-emacs@gnu.org.");
+ e.printStackTrace ();
System.exit (1);
}
diff --git a/java/org/gnu/emacs/EmacsOpenActivity.java
b/java/org/gnu/emacs/EmacsOpenActivity.java
index ac643ae8a13..51335ddb2dd 100644
--- a/java/org/gnu/emacs/EmacsOpenActivity.java
+++ b/java/org/gnu/emacs/EmacsOpenActivity.java
@@ -46,7 +46,6 @@ package org.gnu.emacs;
import android.app.AlertDialog;
import android.app.Activity;
-import android.content.Context;
import android.content.ContentResolver;
import android.content.DialogInterface;
import android.content.Intent;
@@ -301,23 +300,6 @@ public final class EmacsOpenActivity extends Activity
});
}
- public String
- getLibraryDirectory ()
- {
- int apiLevel;
- Context context;
-
- context = getApplicationContext ();
- apiLevel = Build.VERSION.SDK_INT;
-
- if (apiLevel >= Build.VERSION_CODES.GINGERBREAD)
- return context.getApplicationInfo().nativeLibraryDir;
- else if (apiLevel >= Build.VERSION_CODES.DONUT)
- return context.getApplicationInfo().dataDir + "/lib";
-
- return "/data/data/" + context.getPackageName() + "/lib";
- }
-
public void
startEmacsClient (String fileName)
{
@@ -327,7 +309,7 @@ public final class EmacsOpenActivity extends Activity
EmacsClientThread thread;
File file;
- libDir = getLibraryDirectory ();
+ libDir = EmacsService.getLibraryDirectory (this);
builder = new ProcessBuilder (libDir + "/libemacsclient.so",
fileName, "--reuse-frame",
"--timeout=10", "--no-wait");
diff --git a/java/org/gnu/emacs/EmacsSdk7FontDriver.java
b/java/org/gnu/emacs/EmacsSdk7FontDriver.java
index ae91c299de8..6df102f18a2 100644
--- a/java/org/gnu/emacs/EmacsSdk7FontDriver.java
+++ b/java/org/gnu/emacs/EmacsSdk7FontDriver.java
@@ -20,7 +20,6 @@ along with GNU Emacs. If not, see
<https://www.gnu.org/licenses/>. */
package org.gnu.emacs;
import java.io.File;
-import java.io.IOException;
import java.util.LinkedList;
import java.util.List;
@@ -32,8 +31,6 @@ import android.graphics.Canvas;
import android.util.Log;
-import android.os.Build;
-
public class EmacsSdk7FontDriver extends EmacsFontDriver
{
private static final String TOFU_STRING = "\uDB3F\uDFFD";
diff --git a/java/org/gnu/emacs/EmacsSdk8Clipboard.java
b/java/org/gnu/emacs/EmacsSdk8Clipboard.java
index 818a722a908..5a40128b0ac 100644
--- a/java/org/gnu/emacs/EmacsSdk8Clipboard.java
+++ b/java/org/gnu/emacs/EmacsSdk8Clipboard.java
@@ -19,7 +19,9 @@ along with GNU Emacs. If not, see
<https://www.gnu.org/licenses/>. */
package org.gnu.emacs;
-/* Importing the entire package avoids the deprecation warning. */
+/* Importing the entire package instead of just the legacy
+ ClipboardManager class avoids the deprecation warning. */
+
import android.text.*;
import android.content.Context;
diff --git a/java/org/gnu/emacs/EmacsService.java
b/java/org/gnu/emacs/EmacsService.java
index d9cb25f3e9c..d05ebce75dc 100644
--- a/java/org/gnu/emacs/EmacsService.java
+++ b/java/org/gnu/emacs/EmacsService.java
@@ -24,22 +24,15 @@ import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.util.List;
-import java.util.ArrayList;
-import android.graphics.Canvas;
-import android.graphics.Bitmap;
import android.graphics.Point;
-import android.view.View;
import android.view.InputDevice;
import android.view.KeyEvent;
-import android.annotation.TargetApi;
-
import android.app.Notification;
import android.app.NotificationManager;
import android.app.NotificationChannel;
-import android.app.PendingIntent;
import android.app.Service;
import android.content.ClipboardManager;
@@ -51,9 +44,6 @@ import android.content.pm.PackageManager.ApplicationInfoFlags;
import android.content.pm.PackageManager;
import android.content.res.AssetManager;
-import android.database.Cursor;
-import android.database.MatrixCursor;
-
import android.hardware.input.InputManager;
import android.net.Uri;
@@ -68,9 +58,6 @@ import android.os.Vibrator;
import android.os.VibratorManager;
import android.os.VibrationEffect;
-import android.provider.DocumentsContract;
-import android.provider.DocumentsContract.Document;
-
import android.util.Log;
import android.util.DisplayMetrics;
@@ -87,7 +74,6 @@ class Holder<T>
public final class EmacsService extends Service
{
public static final String TAG = "EmacsService";
- public static final int MAX_PENDING_REQUESTS = 256;
public static volatile EmacsService SERVICE;
public static boolean needDashQ;
@@ -107,6 +93,22 @@ public final class EmacsService extends Service
information. */
public static final boolean DEBUG_IC = false;
+ /* Return the directory leading to the directory in which native
+ library files are stored on behalf of CONTEXT. */
+
+ public static String
+ getLibraryDirectory (Context context)
+ {
+ int apiLevel;
+
+ apiLevel = Build.VERSION.SDK_INT;
+
+ if (apiLevel >= Build.VERSION_CODES.GINGERBREAD)
+ return context.getApplicationInfo ().nativeLibraryDir;
+
+ return context.getApplicationInfo ().dataDir + "/lib";
+ }
+
@Override
public int
onStartCommand (Intent intent, int flags, int startId)
@@ -178,23 +180,6 @@ public final class EmacsService extends Service
}
}
- private String
- getLibraryDirectory ()
- {
- int apiLevel;
- Context context;
-
- context = getApplicationContext ();
- apiLevel = Build.VERSION.SDK_INT;
-
- if (apiLevel >= Build.VERSION_CODES.GINGERBREAD)
- return context.getApplicationInfo().nativeLibraryDir;
- else if (apiLevel >= Build.VERSION_CODES.DONUT)
- return context.getApplicationInfo().dataDir + "/lib";
-
- return "/data/data/" + context.getPackageName() + "/lib";
- }
-
@Override
public void
onCreate ()
@@ -219,7 +204,7 @@ public final class EmacsService extends Service
/* Configure Emacs with the asset manager and other necessary
parameters. */
filesDir = app_context.getFilesDir ().getCanonicalPath ();
- libDir = getLibraryDirectory ();
+ libDir = getLibraryDirectory (this);
cacheDir = app_context.getCacheDir ().getCanonicalPath ();
/* Now provide this application's apk file, so a recursive
diff --git a/java/org/gnu/emacs/EmacsView.java
b/java/org/gnu/emacs/EmacsView.java
index 617836d8811..aefc79c4fb7 100644
--- a/java/org/gnu/emacs/EmacsView.java
+++ b/java/org/gnu/emacs/EmacsView.java
@@ -20,7 +20,6 @@ along with GNU Emacs. If not, see
<https://www.gnu.org/licenses/>. */
package org.gnu.emacs;
import android.content.Context;
-import android.content.res.ColorStateList;
import android.text.InputType;
@@ -116,6 +115,7 @@ public final class EmacsView extends ViewGroup
super (EmacsService.SERVICE);
Object tem;
+ Context context;
this.window = window;
this.damageRegion = new Region ();
@@ -133,7 +133,8 @@ public final class EmacsView extends ViewGroup
setDefaultFocusHighlightEnabled (false);
/* Obtain the input method manager. */
- tem = getContext ().getSystemService (Context.INPUT_METHOD_SERVICE);
+ context = getContext ();
+ tem = context.getSystemService (Context.INPUT_METHOD_SERVICE);
imManager = (InputMethodManager) tem;
}
@@ -281,7 +282,6 @@ public final class EmacsView extends ViewGroup
int count, i;
View child;
Rect windowRect;
- int wantedWidth, wantedHeight;
count = getChildCount ();
@@ -422,7 +422,6 @@ public final class EmacsView extends ViewGroup
}
}
-
/* The following two functions must not be called if the view has no
parent, or is parented to an activity. */
diff --git a/java/org/gnu/emacs/EmacsWindow.java
b/java/org/gnu/emacs/EmacsWindow.java
index ea4cf48090d..ffc7476f010 100644
--- a/java/org/gnu/emacs/EmacsWindow.java
+++ b/java/org/gnu/emacs/EmacsWindow.java
@@ -31,19 +31,16 @@ import android.content.Context;
import android.graphics.Rect;
import android.graphics.Canvas;
import android.graphics.Bitmap;
-import android.graphics.Point;
import android.graphics.PixelFormat;
import android.view.View;
import android.view.ViewManager;
-import android.view.ViewGroup;
import android.view.Gravity;
import android.view.KeyEvent;
import android.view.MotionEvent;
import android.view.InputDevice;
import android.view.WindowManager;
-import android.content.Intent;
import android.util.Log;
import android.os.Build;
@@ -87,7 +84,7 @@ public final class EmacsWindow extends EmacsHandleObject
public EmacsWindow parent;
/* List of all children in stacking order. This must be kept
- consistent! */
+ consistent with their Z order! */
public ArrayList<EmacsWindow> children;
/* Map between pointer identifiers and last known position. Used to
@@ -105,9 +102,8 @@ public final class EmacsWindow extends EmacsHandleObject
last button press or release event. */
public int lastButtonState, lastModifiers;
- /* Whether or not the window is mapped, and whether or not it is
- deiconified. */
- private boolean isMapped, isIconified;
+ /* Whether or not the window is mapped. */
+ private boolean isMapped;
/* Whether or not to ask for focus upon being mapped, and whether or
not the window should be focusable. */
@@ -122,7 +118,8 @@ public final class EmacsWindow extends EmacsHandleObject
private WindowManager windowManager;
/* The time of the last KEYCODE_VOLUME_DOWN release. This is used
- to quit Emacs. */
+ to quit Emacs upon two rapid clicks of the volume down
+ button. */
private long lastVolumeButtonRelease;
/* Linked list of character strings which were recently sent as
@@ -1103,14 +1100,12 @@ public final class EmacsWindow extends EmacsHandleObject
public void
noticeIconified ()
{
- isIconified = true;
EmacsNative.sendIconified (this.handle);
}
public void
noticeDeiconified ()
{
- isIconified = false;
EmacsNative.sendDeiconified (this.handle);
}
diff --git a/java/org/gnu/emacs/EmacsWindowAttachmentManager.java
b/java/org/gnu/emacs/EmacsWindowAttachmentManager.java
index 1548bf28087..30f29250970 100644
--- a/java/org/gnu/emacs/EmacsWindowAttachmentManager.java
+++ b/java/org/gnu/emacs/EmacsWindowAttachmentManager.java
@@ -20,7 +20,6 @@ along with GNU Emacs. If not, see
<https://www.gnu.org/licenses/>. */
package org.gnu.emacs;
import java.util.ArrayList;
-import java.util.LinkedList;
import java.util.List;
import android.content.Intent;
@@ -74,8 +73,8 @@ public final class EmacsWindowAttachmentManager
public
EmacsWindowAttachmentManager ()
{
- consumers = new LinkedList<WindowConsumer> ();
- windows = new LinkedList<EmacsWindow> ();
+ consumers = new ArrayList<WindowConsumer> ();
+ windows = new ArrayList<EmacsWindow> ();
}
public void