summaryrefslogtreecommitdiffstats
path: root/src/android/jar/src/org/qtproject/qt5/android/QtNative.java
diff options
context:
space:
mode:
authorBogDan Vatra <bogdan@kde.org>2014-01-17 10:31:27 +0200
committerThe Qt Project <gerrit-noreply@qt-project.org>2014-01-17 10:23:08 +0100
commit8a9bd001c947e6888d37e99fc456339fd2b51b36 (patch)
tree2b91044f316f1c501e4b781fb008b9dfee527d1d /src/android/jar/src/org/qtproject/qt5/android/QtNative.java
parent338f4c9246fd4a85f3f90ca443fd786a008ba348 (diff)
Support multiple native surfaces on Android.
Support for multiple native surfaces is needed by applications that need to mix raster windows with GL windows. Rework the raster and opengl implementation, get rid of eglfs and fbconvenience dependencies. Create a single android platform plugin. [ChangeLog][Android] Rework the raster and opengl implementation. [ChangeLog][Android] Create a single android platform plugin. Task-number: QTBUG-34650 Change-Id: I9b1ab51554823329dda8cfbf8fef27c38f917c7b Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
Diffstat (limited to 'src/android/jar/src/org/qtproject/qt5/android/QtNative.java')
-rw-r--r--src/android/jar/src/org/qtproject/qt5/android/QtNative.java66
1 files changed, 32 insertions, 34 deletions
diff --git a/src/android/jar/src/org/qtproject/qt5/android/QtNative.java b/src/android/jar/src/org/qtproject/qt5/android/QtNative.java
index 57f3642b56..2437752545 100644
--- a/src/android/jar/src/org/qtproject/qt5/android/QtNative.java
+++ b/src/android/jar/src/org/qtproject/qt5/android/QtNative.java
@@ -1,7 +1,7 @@
/****************************************************************************
**
+** Copyright (C) 2014 BogDan Vatra <bogdan@kde.org>
** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies).
-** Copyright (C) 2012 BogDan Vatra <bogdan@kde.org>
** Contact: http://www.qt-project.org/legal
**
** This file is part of the Android port of the Qt Toolkit.
@@ -250,29 +250,10 @@ public class QtNative
}
}
- public static void pauseApplication()
- {
- synchronized (m_mainActivityMutex) {
- if (m_started)
- pauseQtApp();
- }
- }
- public static void resumeApplication()
- {
- synchronized (m_mainActivityMutex) {
- if (m_started) {
- resumeQtApp();
- updateWindow();
- }
- }
- }
// application methods
public static native void startQtApplication(String params, String env);
- public static native void startQtApp(String params, String env);
- public static native void pauseQtApp();
- public static native void resumeQtApp();
public static native boolean startQtAndroidPlugin();
public static native void quitQtAndroidPlugin();
public static native void terminateQt();
@@ -283,16 +264,6 @@ public class QtNative
m_activity.finish();
}
- private static void redrawSurface(final int left, final int top, final int right, final int bottom )
- {
- runAction(new Runnable() {
- @Override
- public void run() {
- m_activityDelegate.redrawWindow(left, top, right, bottom);
- }
- });
- }
-
//@ANDROID-9
static private int getAction(int index, MotionEvent event)
{
@@ -539,6 +510,36 @@ public class QtNative
return certificateArray;
}
+ private static void createSurface(final int id, final boolean onTop, final int x, final int y, final int w, final int h)
+ {
+ runAction(new Runnable() {
+ @Override
+ public void run() {
+ m_activityDelegate.createSurface(id, onTop, x, y, w, h);
+ }
+ });
+ }
+
+ private static void setSurfaceGeometry(final int id, final int x, final int y, final int w, final int h)
+ {
+ runAction(new Runnable() {
+ @Override
+ public void run() {
+ m_activityDelegate.setSurfaceGeometry(id, x, y, w, h);
+ }
+ });
+ }
+
+ private static void destroySurface(final int id)
+ {
+ runAction(new Runnable() {
+ @Override
+ public void run() {
+ m_activityDelegate.destroySurface(id);
+ }
+ });
+ }
+
// screen methods
public static native void setDisplayMetrics(int screenWidthPixels,
int screenHeightPixels,
@@ -567,10 +568,7 @@ public class QtNative
// keyboard methods
// surface methods
- public static native void destroySurface();
- public static native void setSurface(Object surface);
- public static native void lockSurface();
- public static native void unlockSurface();
+ public static native void setSurface(int id, Object surface, int w, int h);
// surface methods
// window methods