1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-01-09 05:01:02 -08:00

Fix styling issues on Android 15 QPR1

* java/org/gnu/emacs/EmacsView.java (EmacsView): Guarantee that
frame views are created with the correct theme.

* java/res/values-v20/style.xml (EmacsStyle):

* java/res/values-v29/style.xml (EmacsStyle): Disable a swiping
gesture enabled on certain Android systems.

* java/res/values-v35/style.xml: Rename from `styles'.xml.
This commit is contained in:
Po Lu 2025-03-03 21:57:05 +08:00
parent f372508f68
commit 96d26b4936
4 changed files with 65 additions and 23 deletions

View file

@ -24,10 +24,11 @@ import android.content.Context;
import android.text.InputType;
import android.view.ContextMenu;
import android.view.ContextThemeWrapper;
import android.view.DragEvent;
import android.view.View;
import android.view.KeyEvent;
import android.view.MotionEvent;
import android.view.View;
import android.view.ViewGroup;
import android.view.ViewTreeObserver;
import android.view.WindowInsets;
@ -127,32 +128,36 @@ public final class EmacsView extends ViewGroup
public
EmacsView (EmacsWindow window)
{
super (EmacsService.SERVICE);
/* This is required to guarantee that popup menus respect the
default style. */
super (new ContextThemeWrapper (EmacsService.SERVICE,
R.style.EmacsStyle));
{
Object tem;
Context context;
Object tem;
Context context;
this.window = window;
this.damageRegion = new Region ();
this.window = window;
this.damageRegion = new Region ();
setFocusable (true);
setFocusableInTouchMode (true);
setFocusable (true);
setFocusableInTouchMode (true);
/* Create the surface view. */
this.surfaceView = new EmacsSurfaceView (this);
addView (this.surfaceView);
/* Create the surface view. */
this.surfaceView = new EmacsSurfaceView (this);
addView (this.surfaceView);
/* Get rid of the default focus highlight. */
if (Build.VERSION.SDK_INT > Build.VERSION_CODES.O)
setDefaultFocusHighlightEnabled (false);
/* Get rid of the default focus highlight. */
if (Build.VERSION.SDK_INT > Build.VERSION_CODES.O)
setDefaultFocusHighlightEnabled (false);
/* Obtain the input method manager. */
context = getContext ();
tem = context.getSystemService (Context.INPUT_METHOD_SERVICE);
imManager = (InputMethodManager) tem;
/* Obtain the input method manager. */
context = getContext ();
tem = context.getSystemService (Context.INPUT_METHOD_SERVICE);
imManager = (InputMethodManager) tem;
/* Add this view as its own global layout listener. */
getViewTreeObserver ().addOnGlobalLayoutListener (this);
/* Add this view as its own global layout listener. */
getViewTreeObserver ().addOnGlobalLayoutListener (this);
}
}
private void