root/java/org/gnu/emacs/EmacsClipboard.java

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

DEFINITIONS

This source file includes following definitions.
  1. setClipboard
  2. ownsClipboard
  3. clipboardExists
  4. getClipboard
  5. getClipboardTargets
  6. getClipboardData
  7. makeClipboard

     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.os.Build;
    23 
    24 /* This class provides helper code for accessing the clipboard,
    25    abstracting between the different interfaces on API 8 and 11.  */
    26 
    27 public abstract class EmacsClipboard
    28 {
    29   public abstract void setClipboard (byte[] bytes);
    30   public abstract int ownsClipboard ();
    31   public abstract boolean clipboardExists ();
    32   public abstract byte[] getClipboard ();
    33 
    34   public abstract byte[][] getClipboardTargets ();
    35   public abstract long[] getClipboardData (byte[] target);
    36 
    37   /* Create the correct kind of clipboard for this system.  */
    38 
    39   public static EmacsClipboard
    40   makeClipboard ()
    41   {
    42     if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB)
    43       return new EmacsSdk11Clipboard ();
    44     else
    45       return new EmacsSdk8Clipboard ();
    46   }
    47 };

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