summaryrefslogtreecommitdiffstats
path: root/src/android
diff options
context:
space:
mode:
authorDaiwei Li <daiweili@suitabletech.com>2015-01-31 00:33:32 -0800
committerDaiwei Li <daiweili@suitabletech.com>2015-10-16 16:32:56 +0000
commitd40839db2fc7c6d993fa4be15b2045171f1e94dc (patch)
treee0addb77a126a7df8072cb3a65de76dd0ac71a7f /src/android
parent6f298be07681f4038ddd5694d259ef64a574ac6f (diff)
Android: Update splash screen in onConfigurationChanged
When the device orientation changes, we should set the background to a drawable appropriate for that orientation. Task-number: QTBUG-44238 Change-Id: I4ea50aedc704060c0b35c2d35b75cbaed3b4979a Reviewed-by: BogDan Vatra <bogdan@kdab.com>
Diffstat (limited to 'src/android')
-rw-r--r--src/android/jar/src/org/qtproject/qt5/android/QtActivityDelegate.java17
-rw-r--r--src/android/java/src/org/qtproject/qt5/android/bindings/QtActivity.java3
2 files changed, 20 insertions, 0 deletions
diff --git a/src/android/jar/src/org/qtproject/qt5/android/QtActivityDelegate.java b/src/android/jar/src/org/qtproject/qt5/android/QtActivityDelegate.java
index ee196f1aef..15d3b136c5 100644
--- a/src/android/jar/src/org/qtproject/qt5/android/QtActivityDelegate.java
+++ b/src/android/jar/src/org/qtproject/qt5/android/QtActivityDelegate.java
@@ -879,6 +879,23 @@ public class QtActivityDelegate
} catch (Exception e) {
e.printStackTrace();
}
+
+ // if splash screen is defined, then show it
+ // Note: QtActivity handles settting the splash screen
+ // in onCreate, change that too if you are changing
+ // how the splash screen should be displayed
+ try {
+ if (m_surfaces.size() == 0) {
+ ActivityInfo info = m_activity.getPackageManager().getActivityInfo(m_activity.getComponentName(), PackageManager.GET_META_DATA);
+ if (info.metaData.containsKey("android.app.splash_screen_drawable"))
+ m_activity.getWindow().setBackgroundDrawableResource(info.metaData.getInt("android.app.splash_screen_drawable"));
+ else
+ m_activity.getWindow().setBackgroundDrawable(new ColorDrawable(0xff000000));
+ }
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+
int rotation = m_activity.getWindowManager().getDefaultDisplay().getRotation();
if (rotation != m_currentRotation) {
QtNative.handleOrientationChanged(rotation, m_nativeOrientation);
diff --git a/src/android/java/src/org/qtproject/qt5/android/bindings/QtActivity.java b/src/android/java/src/org/qtproject/qt5/android/bindings/QtActivity.java
index e5ed690f07..82cd1f4464 100644
--- a/src/android/java/src/org/qtproject/qt5/android/bindings/QtActivity.java
+++ b/src/android/java/src/org/qtproject/qt5/android/bindings/QtActivity.java
@@ -886,6 +886,9 @@ public class QtActivity extends Activity
if (null == getLastNonConfigurationInstance()) {
// if splash screen is defined, then show it
+ // Note: QtActivityDelegate handles updating the splash screen
+ // in onConfigurationChanged, change that too if you are changing
+ // how the splash screen should be displayed
if (m_activityInfo.metaData.containsKey("android.app.splash_screen_drawable"))
getWindow().setBackgroundDrawableResource(m_activityInfo.metaData.getInt("android.app.splash_screen_drawable"));
else