root/java/org/gnu/emacs/EmacsCursor.java

/* [<][>][^][v][top][bottom][index][help] */
     1 /* Communication module for Android terminals.  -*- c-file-style: "GNU" -*-
     2 
     3 Copyright (C) 2023 Free Software Foundation, Inc.
     4 
     5 This file is part of GNU Emacs.
     6 
     7 GNU Emacs is free software: you can redistribute it and/or modify
     8 it under the terms of the GNU General Public License as published by
     9 the Free Software Foundation, either version 3 of the License, or (at
    10 your option) any later version.
    11 
    12 GNU Emacs is distributed in the hope that it will be useful,
    13 but WITHOUT ANY WARRANTY; without even the implied warranty of
    14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    15 GNU General Public License for more details.
    16 
    17 You should have received a copy of the GNU General Public License
    18 along with GNU Emacs.  If not, see <https://www.gnu.org/licenses/>.  */
    19 
    20 package org.gnu.emacs;
    21 
    22 import android.view.PointerIcon;
    23 import android.os.Build;
    24 
    25 /* Cursor wrapper.  Note that pointer icons are not supported prior to
    26    Android 24.  */
    27 
    28 public final class EmacsCursor extends EmacsHandleObject
    29 {
    30   /* The pointer icon associated with this cursor.  */
    31   public final PointerIcon icon;
    32 
    33   public
    34   EmacsCursor (short handle, int glyph)
    35   {
    36     super (handle);
    37 
    38     if (Build.VERSION.SDK_INT < Build.VERSION_CODES.N)
    39       {
    40         icon = null;
    41         return;
    42       }
    43 
    44     icon = PointerIcon.getSystemIcon (EmacsService.SERVICE,
    45                                       glyph);
    46   }
    47 };

/* [<][>][^][v][top][bottom][index][help] */