Eine aufbereitete Darstellung der Quelle

 
     
 
 
Anforderungen  |   Konzepte  |   Entwurf  |   Entwicklung  |   Qualitätssicherung  |   Lebenszyklus  |   Steuerung
 
 
 
 

Benutzer

Quelle  gdkandroidinit-private.h

  Sprache: C
 

/*
 * Copyright (c) 2024-2025 Florian "sp1rit" <sp1rit@disroot.org>
 *
 * This library is free software; you can redistribute it and/or
 * modify it under the terms of the GNU Lesser General Public
 * License as published by the Free Software Foundation; either
 * version 2.1 of the License, or (at your option) any later version.
 *
 * This library is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 * Lesser General Public License for more details.
 *
 * You should have received a copy of the GNU Lesser General Public
 * License along with this library. If not, see <http://www.gnu.org/licenses/>.
 *
 * SPDX-License-Identifier: LGPL-2.1-or-later
 */


#pragma once

#include "gdkandroidinit.h"

G_BEGIN_DECLS

typedef struct _GdkAndroidObject GdkAndroidObject;

typedef struct
{
  struct
  {
    jclass klass;
    jmethodID constructor;
    jfieldID native_ptr;
  } clipboard_provider_change_listener;
  struct
  {
    jclass klass;
    jmethodID constructor;
    jmethodID vflip;
  } clipboard_bitmap_drag_shadow;
  struct
  {
    jclass klass;
    jmethodID constructor;
  } clipboard_empty_drag_shadow;
  struct {
    jclass klass;
    jmethodID constructor;
  } clipboard_internal_clipdata;
  struct {
    jclass klass;
    jmethodID constructor;
    jfieldID native_identifier;
  } clipboard_native_drag_identifier;
  struct
  {
    jclass klass;
    jfieldID surface_identifier;
    jmethodID get_holder;
    jmethodID set_ime_keyboard_state;
    jmethodID set_visibility;
    jmethodID set_input_region;
    jmethodID drop_cursor_icon;
    jmethodID set_cursor_from_id;
    jmethodID set_cursor_from_bitmap;
    jmethodID start_dnd;
    jmethodID update_dnd;
    jmethodID cancel_dnd;
    jmethodID set_active_im_context;
    jmethodID reposition;
    jmethodID drop;
  } surface;
  struct
  {
    jclass klass;
    jstring toplevel_identifier_key;
    jfieldID native_identifier;
    jfieldID toplevel_view;
    jmethodID bind_native;
    jmethodID attach_toplevel_surface;
    jmethodID post_window_configuration;
    jmethodID post_title;
  } toplevel;
  struct
  {
    jclass klass;
    jmethodID set_grabbed_surface;
    jmethodID push_popup;
  } toplevel_view;
  struct
  {
    jclass klass;
    jmethodID constructor;
  } surface_exception;
  struct
  {
    jclass klass;
    jmethodID get_task_id;
    jmethodID get_window_manager;
    jmethodID finish;
    jmethodID move_task_to_back;
    jmethodID start_activity;
    jmethodID start_activity_for_result;
    jmethodID finish_activity;
    jmethodID set_finish_on_touch_outside;
    jint result_ok;
    jint result_cancelled;
  } a_activity;
  struct
  {
    jclass klass;
    jmethodID get_content_resolver;
    jmethodID get_system_service;
    jmethodID get_resources;
    jmethodID get_color;
    jstring activity_service;
    jstring clipboard_service;
  } a_context;
  struct
  {
    jclass klass;
    jmethodID get_type;
    jmethodID open_asset_fd;
    jmethodID open_typed_asset_fd;
    jmethodID query;
  } a_content_resolver;
  struct
  {
    jclass klass;
    jmethodID create_istream;
    jmethodID create_ostream;
    jstring mode_append;
    jstring mode_read;
    jstring mode_overwrite;
  } a_asset_fd;
  struct
  {
    jclass klass;
    jmethodID get_document_id;
    jmethodID get_tree_document_id;
    jmethodID build_children_from_tree;
    jmethodID build_document_from_tree;
    jmethodID copy_document;
    jmethodID create_document;
    jmethodID delete_document;
    jmethodID is_child_document;
    jmethodID is_document;
    jmethodID is_tree;
    jmethodID rename_document;
  } a_documents_contract;
  struct
  {
    jclass klass;
    jstring column_document_id;
    jstring column_display_name;
    jstring column_flags;
    jstring column_icon;
    jstring column_last_modified;
    jstring column_mime_type;
    jstring column_size;
    jstring column_summary;
    jint flag_dir_supports_create;
    jint flag_supports_copy;
    jint flag_supports_delete;
    jint flag_supports_move;
    jint flag_supports_rename;
    jint flag_supports_write;
    jint flag_virtual_document;
    jstring mime_directory;
  } a_documents_contract_document;
  struct
  {
    jclass klass;
    jmethodID get_int;
    jmethodID get_long;
    jmethodID get_string;
    jmethodID is_null;
    jmethodID move_to_next;
    jmethodID close;
  } a_cursor;
  struct
  {
    jclass klass;
    jmethodID get_configuration;
  } a_resources;
  struct
  {
    jclass klass;
    jfieldID ui;
    jint ui_night_undefined;
    jint ui_night_no;
    jint ui_night_yes;
  } a_configuration;
  struct
  {
    jclass klass;
    jint system_accent1_600;
  } a_res_color;
  struct
  {
    jclass klass;
    jmethodID get_primary_clip;
    jmethodID set_primary_clip;
    jmethodID get_clip_desc;
    jmethodID add_change_listener;
    jmethodID remove_change_listener;
  } a_clipboard_manager;
  struct
  {
    jclass klass;
    jmethodID get_mime_type_count;
    jmethodID get_mime_type;
    jobject mime_text_html;
    jobject mime_text_plain;
  } a_clip_desc;
  struct
  {
    jclass klass;
    jmethodID add_item;
    jmethodID get_item_count;
    jmethodID get_item;
    jmethodID new_plain_text;
    jmethodID new_html;
    jmethodID new_uri;
  } a_clipdata;
  struct
  {
    jclass klass;
    jmethodID constructor_text;
    jmethodID constructor_html;
    jmethodID constructor_uri;
    jmethodID coerce_to_text;
    jmethodID get_html;
    jmethodID get_uri;
  } a_clipdata_item;
  struct
  {
    jclass klass;
    jmethodID get_context;
    jmethodID get_display;
    jint drag_global;
    jint drag_global_prefix_match;
    jint drag_global_uri_read;
  } a_view;
  struct
  {
    jclass klass;
    jmethodID get_refresh_rate;
  } a_display;
  struct
  {
    jclass klass;
    jint type_alias;
    jint type_all_scroll;
    jint type_arrow;
    jint type_cell;
    jint type_context_menu;
    jint type_copy;
    jint type_crosshair;
    jint type_grab;
    jint type_grabbing;
    jint type_hand;
    jint type_help;
    jint type_horizontal_double_arrow;
    jint type_no_drop;
    jint type_null;
    jint type_text;
    jint type_top_left_diagonal_double_arrow;
    jint type_top_right_diagonal_double_arrow;
    jint type_vertical_double_arrow;
    jint type_vertical_text;
    jint type_wait;
    jint type_zoom_in;
    jint type_zoom_out;
    GHashTable *gdk_type_mapping;
  } a_pointericon;
  struct
  {
    jclass klass;
    jmethodID create_from_array;
    jobject argb8888;
  } a_bitmap;
  struct
  {
    jclass klass;
    jmethodID constructor;
    jmethodID constructor_action;
    jmethodID create_chooser;
    jmethodID get_data;
    jmethodID get_clipdata;
    jmethodID set_data_norm;
    jmethodID add_flags;
    jmethodID put_extra_bool;
    jmethodID put_extra_int;
    jmethodID put_extra_int_array;
    jmethodID put_extra_long;
    jmethodID put_extra_string;
    jmethodID put_extra_string_array;
    jmethodID put_extra_parcelable;
    jmethodID put_extras_from_bundle;
    jmethodID set_type;
    jmethodID normalize_mimetype;
    jint flag_activity_clear_task;
    jint flag_activity_multiple_task;
    jint flag_activity_new_task;
    jint flag_activity_no_animation;
    jint flag_grant_read_perm;
    jint flag_grant_write_perm;
    jstring action_create_document;
    jstring action_open_document;
    jstring action_open_document_tree;
    jstring action_edit;
    jstring action_view;
    jstring category_openable;
    jstring extra_allow_multiple;
    jstring extra_mimetypes;
    jstring extra_title;
    jstring extra_customtabs_session;
    jstring extra_customtabs_toolbar_color;
  } a_intent;
  struct {
    jclass klass;
    jmethodID constructor;
    jmethodID put_binder;
  } a_bundle;
  struct
  {
    jclass klass;
    jmethodID get_surface;
    jmethodID get_surface_frame;
    jmethodID lock_canvas;
    jmethodID lock_canvas_dirty;
    jmethodID unlock_canvas_and_post;
  } a_surfaceholder;
  struct
  {
    jclass klass;
    jmethodID draw_color;
  } a_canvas;
  struct
  {
    jclass klass;
    jobject clear;
  } a_blendmode;
  struct
  {
    jclass klass;
    jmethodID constructor;
    jfieldID bottom;
    jfieldID left;
    jfieldID right;
    jfieldID top;
  } a_rect;
  struct
  {
    jclass klass;
    jmethodID constructor;
  } a_rectf;
  struct
  {
    jclass klass;
    jmethodID get_device;
  } a_input_event;
  struct
  {
    jclass klass;
    jmethodID get_device_from_id;
    jmethodID get_motion_range;
  } a_input_device;
  struct
  {
    jclass klass;
    jmethodID get_axis;
    jmethodID get_min;
    jmethodID get_max;
    jmethodID get_resolution;
  } a_motion_range;
  struct
  {
    jclass klass;
    jmethodID get;
  } a_key_character_map;
  struct
  {
    jclass klass;
    jmethodID get_action;
    jmethodID get_clip_data;
    jmethodID get_clip_description;
    jmethodID get_local_state;
    jmethodID get_result;
    jmethodID get_x;
    jmethodID get_y;
    jint action_started;
    jint action_entered;
    jint action_location;
    jint action_exited;
    jint action_ended;
    jint action_drop;
  } a_drag_event;
  struct
  {
    jclass klass;
    jmethodID move_task_to_font;
  } a_activity_manager;
  struct
  {
    jclass klass;
    jmethodID get_path;
    jmethodID get_scheme;
    jmethodID normalize;
    jmethodID parse;
  } a_uri;
  struct
  {
    jclass klass;
    jmethodID get_channel;
  } j_file_istream;
  struct {
    jclass klass;
    jmethodID close;
    jmethodID read;
    jmethodID skip;
  } j_istream;
  struct
  {
    jclass klass;
    jmethodID get_channel;
  } j_file_ostream;
  struct
  {
    jclass klass;
    jmethodID close;
    jmethodID flush;
    jmethodID write;
  } j_ostream;
  struct {
    jclass klass;
    jmethodID get_position;
    jmethodID set_position;
    jmethodID get_size;
    jmethodID truncate;
  } j_file_channel;
  struct
  {
    jclass klass;
    jmethodID guess_content_type_for_name;
    jstring mime_binary_data;
  } j_urlconnection;
  struct
  {
    jclass klass;
    jmethodID constructor;
  } j_arraylist;
  struct
  {
    jclass klass;
    jmethodID add;
    jmethodID get;
    jmethodID size;
    jmethodID to_array;
  } j_list;
  struct
  {
    jclass klass;
  } j_string;
  struct
  {
    jclass klass;
    jmethodID equals;
    jmethodID hash_code;
    jmethodID to_string;
  } j_object;
  struct
  {
    jclass klass;
  } j_char_conversion_exception;
  struct
  {
    jclass io_exception;
    jclass eof_exception;
    jclass not_found_exception;
    jclass access_denied_exception;
    jclass not_empty_exception;
    jclass exists_exception;
    jclass loop_exception;
    jclass no_file_exception;
    jclass not_dir_exception;
    jclass malformed_uri_exception;
    jclass channel_closed_exception;
  } j_exceptions;
  struct
  {
    jclass klass;
    jmethodID get_message;
  } j_throwable;
} GdkAndroidJavaCache;

typedef struct
{
  JNIEnv *env;
  gboolean needs_detach;
} GdkAndroidThreadGuard;

JNIEnv *gdk_android_get_env (void);

GdkAndroidThreadGuard gdk_android_get_thread_env (void);
void gdk_android_drop_thread_env (GdkAndroidThreadGuard *self);

jobject gdk_android_get_activity        (void);
void    gdk_android_set_latest_activity (JNIEnv *env, jobject activity);

jobject gdk_android_init_get_user_classloader (void);
jclass gdk_android_init_find_class_using_classloader (JNIEnv *env, jobject class_loader, const gchar *klass);

const GdkAndroidJavaCache *gdk_android_get_java_cache (void);

G_END_DECLS

Messung V0.5 in Prozent
C=99 H=97 G=97

¤ Dauer der Verarbeitung: 0.13 Sekunden  (vorverarbeitet am  2026-07-02) ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

PVS Prover

Isabelle Prover

NIST Cobol Testsuite

Cephes Mathematical Library

Vienna Development Method

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.






                                                                                                                                                                                                                                                                                                                                                                                                     


Neuigkeiten

     Aktuelles
     Motto des Tages

Software

     Quellcodebibliothek
     Eigene Quellcodes
     Fremde Quellcodes
     Suchen

Aktivitäten

     Artikel über Sicherheit
     Anleitung zur Aktivierung von SSL

Muße

     Gedichte
     Musik
     Bilder

Jenseits des Üblichen ....
    

Besucherstatistik

Besucherstatistik