diff options
| author | Po Lu | 2023-10-05 11:57:26 +0800 |
|---|---|---|
| committer | Po Lu | 2023-10-05 11:57:26 +0800 |
| commit | 253f1aff1ab00e9794f3cfcf50e86e335f411242 (patch) | |
| tree | 8a232f9683100875bac890832ee7c3af5ec07a3d /java/org/gnu | |
| parent | 511acc2ed827dd039eee1c6d70c77153825d5c67 (diff) | |
| download | emacs-253f1aff1ab00e9794f3cfcf50e86e335f411242.tar.gz emacs-253f1aff1ab00e9794f3cfcf50e86e335f411242.zip | |
Port Emacs to Android 34
* configure.ac: Detect and require Android 34 headers.
* doc/emacs/android.texi (Android Environment): Mention new
permissions mandated by Android 34.
* java/AndroidManifest.xml.in: Introduce new permissions and
foreground service types prerequisite for background execution under
Android 34.
* java/INSTALL: Update installation documentation.
* java/org/gnu/emacs/EmacsSdk7FontDriver.java (Sdk7FontEntity)
(Sdk7FontObject):
* java/org/gnu/emacs/EmacsService.java (onCreate): Silence deprecation
warnings.
* src/android.c: Update documentation.
Diffstat (limited to 'java/org/gnu')
| -rw-r--r-- | java/org/gnu/emacs/EmacsSdk7FontDriver.java | 2 | ||||
| -rw-r--r-- | java/org/gnu/emacs/EmacsService.java | 17 |
2 files changed, 18 insertions, 1 deletions
diff --git a/java/org/gnu/emacs/EmacsSdk7FontDriver.java b/java/org/gnu/emacs/EmacsSdk7FontDriver.java index 21ae159d5bd..33d6ee34fa4 100644 --- a/java/org/gnu/emacs/EmacsSdk7FontDriver.java +++ b/java/org/gnu/emacs/EmacsSdk7FontDriver.java | |||
| @@ -99,6 +99,7 @@ public class EmacsSdk7FontDriver extends EmacsFontDriver | |||
| 99 | /* The typeface. */ | 99 | /* The typeface. */ |
| 100 | public Sdk7Typeface typeface; | 100 | public Sdk7Typeface typeface; |
| 101 | 101 | ||
| 102 | @SuppressWarnings ("deprecation") | ||
| 102 | public | 103 | public |
| 103 | Sdk7FontEntity (Sdk7Typeface typeface) | 104 | Sdk7FontEntity (Sdk7Typeface typeface) |
| 104 | { | 105 | { |
| @@ -120,6 +121,7 @@ public class EmacsSdk7FontDriver extends EmacsFontDriver | |||
| 120 | /* The typeface. */ | 121 | /* The typeface. */ |
| 121 | public Sdk7Typeface typeface; | 122 | public Sdk7Typeface typeface; |
| 122 | 123 | ||
| 124 | @SuppressWarnings ("deprecation") | ||
| 123 | public | 125 | public |
| 124 | Sdk7FontObject (Sdk7Typeface typeface, int pixelSize) | 126 | Sdk7FontObject (Sdk7Typeface typeface, int pixelSize) |
| 125 | { | 127 | { |
diff --git a/java/org/gnu/emacs/EmacsService.java b/java/org/gnu/emacs/EmacsService.java index 997c6923fcc..28b725d0cd0 100644 --- a/java/org/gnu/emacs/EmacsService.java +++ b/java/org/gnu/emacs/EmacsService.java | |||
| @@ -223,6 +223,21 @@ public final class EmacsService extends Service | |||
| 223 | } | 223 | } |
| 224 | } | 224 | } |
| 225 | 225 | ||
| 226 | /* Return the display density, adjusted in accord with the user's | ||
| 227 | text scaling preferences. */ | ||
| 228 | |||
| 229 | @SuppressWarnings ("deprecation") | ||
| 230 | private static float | ||
| 231 | getScaledDensity (DisplayMetrics metrics) | ||
| 232 | { | ||
| 233 | /* The scaled density has been made obsolete by the introduction | ||
| 234 | of non-linear text scaling in Android 34, where there is no | ||
| 235 | longer a fixed relation between point and pixel sizes, but | ||
| 236 | remains useful, considering that Emacs does not support | ||
| 237 | non-linear text scaling. */ | ||
| 238 | return metrics.scaledDensity; | ||
| 239 | } | ||
| 240 | |||
| 226 | @Override | 241 | @Override |
| 227 | public void | 242 | public void |
| 228 | onCreate () | 243 | onCreate () |
| @@ -242,7 +257,7 @@ public final class EmacsService extends Service | |||
| 242 | metrics = getResources ().getDisplayMetrics (); | 257 | metrics = getResources ().getDisplayMetrics (); |
| 243 | pixelDensityX = metrics.xdpi; | 258 | pixelDensityX = metrics.xdpi; |
| 244 | pixelDensityY = metrics.ydpi; | 259 | pixelDensityY = metrics.ydpi; |
| 245 | tempScaledDensity = ((metrics.scaledDensity | 260 | tempScaledDensity = ((getScaledDensity (metrics) |
| 246 | / metrics.density) | 261 | / metrics.density) |
| 247 | * pixelDensityX); | 262 | * pixelDensityX); |
| 248 | resolver = getContentResolver (); | 263 | resolver = getContentResolver (); |