diff options
| author | Po Lu | 2023-01-28 21:21:45 +0800 |
|---|---|---|
| committer | Po Lu | 2023-01-28 21:21:45 +0800 |
| commit | f9e32ce1575da69cc3a9e4690b6df2dbee41d14d (patch) | |
| tree | 2dad1101288c0ff381f9d7265e6ce27ad75dbdec /java | |
| parent | 22749d69e5892896f5ae9d26e7d6c43da67fa13d (diff) | |
| download | emacs-f9e32ce1575da69cc3a9e4690b6df2dbee41d14d.tar.gz emacs-f9e32ce1575da69cc3a9e4690b6df2dbee41d14d.zip | |
Implement `restart-emacs' on Android
* java/org/gnu/emacs/EmacsService.java (restartEmacs): New
function.
* src/android.c (struct android_emacs_service)
(android_init_emacs_service): Add new method.
(android_restart_emacs): New function.
* src/android.h: Update prototypes.
* src/emacs.c (Fkill_emacs): Call android_restart_emacs whenever
appropriate.
Diffstat (limited to 'java')
| -rw-r--r-- | java/org/gnu/emacs/EmacsService.java | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/java/org/gnu/emacs/EmacsService.java b/java/org/gnu/emacs/EmacsService.java index eb9b61dd876..d17f6d1286c 100644 --- a/java/org/gnu/emacs/EmacsService.java +++ b/java/org/gnu/emacs/EmacsService.java | |||
| @@ -611,4 +611,16 @@ public class EmacsService extends Service | |||
| 611 | 611 | ||
| 612 | return manager.thing; | 612 | return manager.thing; |
| 613 | } | 613 | } |
| 614 | |||
| 615 | public void | ||
| 616 | restartEmacs () | ||
| 617 | { | ||
| 618 | Intent intent; | ||
| 619 | |||
| 620 | intent = new Intent (this, EmacsActivity.class); | ||
| 621 | intent.addFlags (Intent.FLAG_ACTIVITY_NEW_TASK | ||
| 622 | | Intent.FLAG_ACTIVITY_CLEAR_TASK); | ||
| 623 | startActivity (intent); | ||
| 624 | System.exit (0); | ||
| 625 | } | ||
| 614 | }; | 626 | }; |