Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 9aefd415 authored by Selim Cinek's avatar Selim Cinek Committed by Android (Google) Code Review
Browse files

Merge "Removed round rect clipping and hardware layers from recents" into lmp-dev

parents 595f6d91 e8199c58
Loading
Loading
Loading
Loading
+22 −0
Original line number Original line Diff line number Diff line
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2014 The Android Open Source Project

     Licensed under the Apache License, Version 2.0 (the "License");
     you may not use this file except in compliance with the License.
     You may obtain a copy of the License at

          http://www.apache.org/licenses/LICENSE-2.0

     Unless required by applicable law or agreed to in writing, software
     distributed under the License is distributed on an "AS IS" BASIS,
     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     See the License for the specific language governing permissions and
     limitations under the License.
-->

<shape xmlns:android="http://schemas.android.com/apk/res/android"
       android:shape="rectangle">
    <corners android:topLeftRadius="@dimen/recents_task_view_rounded_corners_radius"
             android:topRightRadius="@dimen/recents_task_view_rounded_corners_radius"/>
    <solid android:color="#00000000" />
</shape>
 No newline at end of file
+2 −3
Original line number Original line Diff line number Diff line
@@ -17,8 +17,7 @@
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_height="match_parent"
    android:focusable="true"
    android:focusable="true">
    android:background="#FFffffff">
    <com.android.systemui.recents.views.TaskViewThumbnail
    <com.android.systemui.recents.views.TaskViewThumbnail
        android:id="@+id/task_view_thumbnail"
        android:id="@+id/task_view_thumbnail"
        android:layout_width="match_parent"
        android:layout_width="match_parent"
+4 −0
Original line number Original line Diff line number Diff line
@@ -29,6 +29,10 @@
     ImageView -->
     ImageView -->
    <bool name="config_recents_thumbnail_image_fits_to_xy">false</bool>
    <bool name="config_recents_thumbnail_image_fits_to_xy">false</bool>


    <!-- Whether recents should use hardware layers for its taskviews. This flag can be enabled
    for devices where the java drawing of round rects may be slow -->
    <bool name="config_recents_use_hardware_layers">false</bool>

    <!-- The number of app thumbnails we keep in memory -->
    <!-- The number of app thumbnails we keep in memory -->
    <integer name="config_recents_max_thumbnail_count">10</integer>
    <integer name="config_recents_max_thumbnail_count">10</integer>


+2 −0
Original line number Original line Diff line number Diff line
@@ -119,6 +119,7 @@ public class RecentsConfiguration {
    public int launchedToTaskId;
    public int launchedToTaskId;


    /** Misc **/
    /** Misc **/
    public boolean useHardwareLayers;
    public int altTabKeyDelay;
    public int altTabKeyDelay;


    /** Dev options and global settings */
    /** Dev options and global settings */
@@ -271,6 +272,7 @@ public class RecentsConfiguration {
                res.getInteger(R.integer.recents_nav_bar_scrim_enter_duration);
                res.getInteger(R.integer.recents_nav_bar_scrim_enter_duration);


        // Misc
        // Misc
        useHardwareLayers = res.getBoolean(R.bool.config_recents_use_hardware_layers);
        altTabKeyDelay = res.getInteger(R.integer.recents_alt_tab_key_delay);
        altTabKeyDelay = res.getInteger(R.integer.recents_alt_tab_key_delay);
    }
    }


+5 −9
Original line number Original line Diff line number Diff line
@@ -204,7 +204,8 @@ class TaskResourceLoader implements Runnable {
                    if (!mCancelled) {
                    if (!mCancelled) {
                        // Notify that the task data has changed
                        // Notify that the task data has changed
                        final Drawable newIcon = cachedIcon;
                        final Drawable newIcon = cachedIcon;
                        final Bitmap newThumbnail = cachedThumbnail;
                        final Bitmap newThumbnail = cachedThumbnail == mDefaultThumbnail
                                ? null : cachedThumbnail;
                        mMainThreadHandler.post(new Runnable() {
                        mMainThreadHandler.post(new Runnable() {
                            @Override
                            @Override
                            public void run() {
                            public void run() {
@@ -252,7 +253,6 @@ public class RecentsTaskLoader {


    BitmapDrawable mDefaultApplicationIcon;
    BitmapDrawable mDefaultApplicationIcon;
    Bitmap mDefaultThumbnail;
    Bitmap mDefaultThumbnail;
    Bitmap mLoadingThumbnail;


    /** Private Constructor */
    /** Private Constructor */
    private RecentsTaskLoader(Context context) {
    private RecentsTaskLoader(Context context) {
@@ -271,9 +271,6 @@ public class RecentsTaskLoader {
        mDefaultThumbnail = Bitmap.createBitmap(1, 1, Bitmap.Config.ARGB_8888);
        mDefaultThumbnail = Bitmap.createBitmap(1, 1, Bitmap.Config.ARGB_8888);
        mDefaultThumbnail.setHasAlpha(false);
        mDefaultThumbnail.setHasAlpha(false);
        mDefaultThumbnail.eraseColor(0xFFffffff);
        mDefaultThumbnail.eraseColor(0xFFffffff);
        mLoadingThumbnail = Bitmap.createBitmap(1, 1, Bitmap.Config.ARGB_8888);
        mLoadingThumbnail.setHasAlpha(false);
        mLoadingThumbnail.eraseColor(0xFFffffff);
        mDefaultApplicationIcon = new BitmapDrawable(context.getResources(), icon);
        mDefaultApplicationIcon = new BitmapDrawable(context.getResources(), icon);


        // Initialize the proxy, cache and loaders
        // Initialize the proxy, cache and loaders
@@ -500,17 +497,16 @@ public class RecentsTaskLoader {
        // use the default assets in their place until they load
        // use the default assets in their place until they load
        boolean requiresLoad = (applicationIcon == null) || (thumbnail == null);
        boolean requiresLoad = (applicationIcon == null) || (thumbnail == null);
        applicationIcon = applicationIcon != null ? applicationIcon : mDefaultApplicationIcon;
        applicationIcon = applicationIcon != null ? applicationIcon : mDefaultApplicationIcon;
        thumbnail = thumbnail != null ? thumbnail : mDefaultThumbnail;
        if (requiresLoad) {
        if (requiresLoad) {
            mLoadQueue.addTask(t);
            mLoadQueue.addTask(t);
        }
        }
        t.notifyTaskDataLoaded(thumbnail, applicationIcon);
        t.notifyTaskDataLoaded(thumbnail == mDefaultThumbnail ? null : thumbnail, applicationIcon);
    }
    }


    /** Releases the task resource data back into the pool. */
    /** Releases the task resource data back into the pool. */
    public void unloadTaskData(Task t) {
    public void unloadTaskData(Task t) {
        mLoadQueue.removeTask(t);
        mLoadQueue.removeTask(t);
        t.notifyTaskDataUnloaded(mDefaultThumbnail, mDefaultApplicationIcon);
        t.notifyTaskDataUnloaded(null, mDefaultApplicationIcon);
    }
    }


    /** Completely removes the resource data from the pool. */
    /** Completely removes the resource data from the pool. */
@@ -519,7 +515,7 @@ public class RecentsTaskLoader {
        mThumbnailCache.remove(t.key);
        mThumbnailCache.remove(t.key);
        mApplicationIconCache.remove(t.key);
        mApplicationIconCache.remove(t.key);
        if (notifyTaskDataUnloaded) {
        if (notifyTaskDataUnloaded) {
            t.notifyTaskDataUnloaded(mDefaultThumbnail, mDefaultApplicationIcon);
            t.notifyTaskDataUnloaded(null, mDefaultApplicationIcon);
        }
        }
    }
    }


Loading