[Google Pixel 2 XL Themes, Apps, and Mods] sharkie405:
[IMG="Pixel 2 XL Launcher Mods"]http://i981.photobucket.com/albums/ae293/Sharkie405/3pixel2xlswithscreenies_final-2_zpsfgcr2znk.png[/IMG]

I am not responsible for your device.

You must be rooted.​

The lastest uploads can be found HERE and HERE.

I will not be taking any more requests. Honestly, I'm just tired of modding this apk. I've got it how I like it, and I made a couple of other versions based off of what users have said they wanted.

If you want something different that what's posted here, you'll have to mod it yourself. See the section below to learn how to do that. It's not difficult, not "overly" time consuming, and the tools are free.

If you need help with how to complete the mods, or questions about the process in general, I will of course be more than willing to help you out. Just ask.

MIY (Mod It Yourself)

Have you used the instructions below to make your own unique mods to the Pixel 2 Launcher?

If so, you should share them with everyone! Post them up and I'll link to them here in the first post.

Also, let me know whether or not you found the instructions easy to understand.

I've heard that a lot of Android newbies have hopped on board with the release of the Pixel 2 series. If that's you, welcome to the wonderful world of Android!

Due to this, I'm going to take this tutorial from the top and break it down step by step.

The Setup

Tools Required:

A computer

Java installed: https://java.com/en/

A rooted Pixel 2 XL - How to root Pixel 2 XL

Proper drivers for the Pixel 2 XL.

Apktool - https://ibotpeaches.github.io/Apktool/ (scroll down and download the newest version)

Platform Tools (newest version - 16.0.2, at the time of this writing) - https://developer.android.com/studio/releases/platform-tools.html (Choose your OS version - Windows, OS, or Linux)

Text Editor - I use Notepad++ https://notepad-plus-plus.org/download/v7.5.1.html

7zip - a free zip extractor. Not necessary, but definitely better than using Windows built-in zip tool.

Step 1 - Ensure you have USB Debugging enabled on your phone

If you don't know how to do that:

Go to Settings>System>About Phone

Tap on "Build Number" seven times. You will see a message that says you are now a developer

Go back one screen to Settings>System

Click on "{ } Developer Options"

Scroll down a tiny bit to the "Debugging" section

Turn on "USB Debugging"

Plug your phone into your PC and answer the prompt on your phone to "Allow USB debugging?" Check the checkbox to "Always allow from this computer," then click "OK."

Step 2 - Ensure you have the proper drivers for the Pixel 2 XL installed on your PC. Plugging up your phone to your PC should cause Windows to automatically download and install them for you, or if you've ever had a Pixel or Nexus phone in the past, then you probably already have them; but if not, you can get them from here - https://developer.android.com/studio/run/win-usb.html

Step 3 - If necessary, download and install Notepad++ or whatever text editor you downloaded.

Step 4 - Create a new folder somewhere and call it whatever you like. We are going to put all of the stuff we just downloaded in said folder. For the purposes of this tutorial we'll call the folder MyAndroidMods.

Step 5 - Download Apktool from the link above and put it in in the MyAndroidMods folder. Rename the apktool_2.3.0.jar (version 2.3.0 at the time of this writing) to just apktool.jar

Step 5.5 - Download the Apktool Windows wrapper script - https://ibotpeaches.github.io/Apktool/install/ (This step is not necessary, but it makes things easier, trust me)

- Do as the instructions say, and right-click the hyperlink "wrapper script" text, and choose "Save Link As..." from the context menu. Save it as "apktool.bat" to the MyAndroidMods folder.

- If you should accidentally save it as "apktool.bat.txt," just delete the ending ".txt" part so that it becomes just "apktoo.bat" Windows will ask you if you're sure you want to change it because changing it might make the file unstable. Just click "Yes."

- The point of the apktool.bat file is that when we get to the command line part we will only have to type "apktool (perform command here)" instead of "java -jar apktool.jar (perform command here)." Believe me, every second saved is great.
​

Step 6 - Dowload the Platform Tools using the link provided above. It doesn't matter where you save the zip.

Step 7 - Extract the "platform-tools-latest-windows" zip. It doesn't matter where.

Step 8 - Copy all of the contents from inside the extracted "platform-tools-latest-windows\platform-tools" folder into your MyAndroidMods folder.

Step 9 - On your PC, go to C:\Windows\System32

Step 10 - Scroll down until you find the "cmd.exe" file.

Step 11 - Copy the cmd.exe file into your MyAndroidMods folder (this way we won't have to CD into your folder)

Step 13 - On your phone, go to /system/priv-app/NexusLauncherPrebuilt and copy the NexusLauncherPrebuilt.apk to your phone's Main Storage.

Step 14 - Plug your phone into your PC if it's not already.

Step 15 - On your phone, click the "USB charging this device" notification and change it to "Transfer files."

Step 15 - Copy or move the NexusLauncherPrebuilt.apk from your phone's Main Storage to the MyAndroidMods folder on your PC.

Step 16 - On your phone, go to /system/framework and copy the framework-res.apk to your phone's Main Storage.

Step 17 - Copy or move the framework-res.apk from your phone's Main Storage to the MyAndroidMods folder on your PC.

Step 18 - THE SET UP IS NOW COMPLETE! CONGRATULATIONS!

Ensure that your MyAndroidMods folder looks like the image below. Notice everything is in the root of the MyAndroidMods folder. Ensure that there is: apktool.bat, apktool.jar, cmd.exe, all the platform tool files, framework-res.apk, and the NexusLauncherPrebuilt.apk.

Using Apktool

For the purposes of this tutorial, we will only be concerning ourselves with three apktool commands:

- Installing the framework

- Decompiling an apk

- Recompiling an apk

Step 1 - The first thing we need to do is install the framework. To do that:

- Double click the cmd.exe in your MyAndroidMods folder

- In the command prompt window that opens up, type:

apktool if framework-res.apk

- You should then see a message that says, "Framework installed to:.......", like so:

Step 2 - Decompiling the Launcher.apk

- In the command prompt window, type:

apktool d NexusLauncherPrebuilt.apk

- Once that process is finished, it should look like this:

Step 3 or the last step after you've made your mods - Recompiling the apk

- In the command prompt window, type:

apktool b NexusLauncherPrebuilt -c

- Once that process is finished, it should look like this:

The Good Stuff - How to Make the Mods

Open up the files mentioned in the sections below using your favorite text editor.

To remove the text from ONLY the home screen:

Go to /res/values/styles.xml, and find this section:

<style name="BaseIcon.Workspace" parent= [MENTION=262514]style[/MENTION]/BaseIcon">
<item name="android:shadowColor">?workspaceShadowColor</item>
<item name="android:shadowRadius">2.0</item>
<item name="ambientShadowColor">?workspaceAmbientShadowColor</item>
<item name="ambientShadowBlur">2.5dip</item>
<item name="keyShadowColor">?workspaceKeyShadowColor</item>
<item name="keyShadowBlur">1.0dip</item>
<item name="keyShadowOffset">0.5dip</item>
</style>

Add this line somewhere in between the <style> brackets:

<item name="android:textColor">#00000000</item>

** This will also remove the text from the applications inside folders on the home screen when in the "dark theme." Continue reading towards the bottom to find out how to add that text back.

SAVE THE FILE

To remove the text from the app drawer:

Go to res/values/styles.xml, and find this section:

<style name="BaseIcon">
<item name="android:textColor">?android:textColorSecondary</item>
<item name="android:ellipsize">marquee</item>
<item name="android:gravity">center_horizontal</item>
<item name="android:layout_gravity">center</item>
<item name="android:focusable">true</item>
<item name="android:layout_width">fill_parent</item>
<item name="android:layout_height">fill_parent</item>
<item name="android:singleLine">true</item>
<item name="android:shadowRadius">0.0</item>
<item name="android:fontFamily">sans-serif-condensed</item>
</style>

Change the "android:textColor" value from "?android:textColorSecondary" to #00000000.

SAVE THE FILE

To make the G in the search bar always be in color:

Go to res/values/styles.xml, and find this section:

<style name="HotseatQsbTheme">
<item name="gIcon">@drawable/ic_super_g_shadow</item>
<item name="micIcon">@drawable/ic_mic_shadow</item>
</style>

Change it to this:

<style name="HotseatQsbTheme">
<item name="gIcon">@drawable/[COLOR="red"][B]ic_super_g_color[/B][/COLOR]</item>
<item name="micIcon">@drawable/[COLOR="red"][B]ic_mic_color[/B][/COLOR]</item>
</style>

SAVE THE FILE

To change the icon size, change the number or rows or columns in home screen, to change the number of icons in the hotseat, or to change the max number or rows or columns in home screen folders:

Go to /res/xml/device_profiles.xml, and find this line:

<profile launcher:name="Taimen" launcher:minWidthDps="387.0" launcher:minHeightDps="750.0" launcher:numRows="5" launcher:numColumns="5" launcher:numFolderRows="4" launcher:numFolderColumns="4" launcher:minAllAppsPredictionColumns="4" launcher:numHotseatIcons="5" launcher:iconSize="54.0" launcher:landscapeIconSize="52.0" launcher:iconTextSize="13.0" launcher:defaultLayoutId="@xml/default_workspace_5x5" />

Change these values to whatever size you want. They should be self-explanatory:

- launcher:iconSize="54.0"

- launcher:landscapeIconSize="52.0"

- launcher:numRows="5"

- launcher:numColumns="5"

- launcher:numFolderRows="4"

- launcher:numFolderColumns="4"

- launcher:numFolderRows="4"

- launcher:numHotseatIcons="5"

*Keep in mind that changing the iconSize, numRows, and numColumns affects both the home screen and the app drawer.

SAVE THE FILE

To remove the page indicator from the home screen:

Go to /res/values/dimens.xml, and find these lines:

<dimen name="dynamic_grid_min_page_indicator_size">32.0dip</dimen>
<dimen name="dynamic_grid_page_indicator_line_height">1.0dip</dimen>

Change both of their values to "0.0dip"

To remove the home screen app drawer up arrow:

Go to /res/values/dimens.xml, and find these lines:

<dimen name="all_apps_caret_size">13.0dip</dimen>
<dimen name="all_apps_caret_workspace_offset">18.0dip</dimen>

Change both of those values to "0.0dip"

SAVE THE FILE

To remove the white-haze background from the hotseat and remove the white background from the app drawer:

Go to /res/values/styles.xml, and find this section:

<style name="BaseLauncherThemeWithCustomAttrs" parent= [MENTION=262514]style[/MENTION]/BaseLauncherTheme">
<item name="allAppsScrimColor">#ccffffff</item>
<item name="allAppsNavBarScrimColor">#66ffffff</item>
<item name="popupColorPrimary">#ffffffff</item>
<item name="popupColorSecondary">#fff5f5f5</item>
<item name="popupColorTertiary">#ffe0e0e0</item>
<item name="isMainColorDark">false</item>
<item name="isWorkspaceDarkText">false</item>
<item name="workspaceTextColor" [MENTION=365912]and[/MENTION]roid:color/white</item>
<item name="workspaceShadowColor">#b0000000</item>
<item name="workspaceAmbientShadowColor">#33000000</item>
<item name="workspaceKeyShadowColor">#44000000</item>
<item name="workspaceStatusBarScrim">@drawable/workspace_bg</item>
<item name="widgetsTheme" [MENTION=262514]style[/MENTION]/WidgetContainerTheme</item>
</style>

Change the "allAppsScrimColor" value to "#00000000"

**After making the app drawer mostly transparent, you may want to consider changing the text for the "light theme" to white with a text shadow so it shows up better. Keep reading to find out how to do that.

SAVE THE FILE

To remove the semi-transparent, app drawer navbar shade while in the "light theme":

Go to /res/values/styles.xml, and find this section:

<style name="BaseLauncherThemeWithCustomAttrs" parent= [MENTION=262514]style[/MENTION]/BaseLauncherTheme">
<item name="allAppsScrimColor">#ccffffff</item>
<item name="allAppsNavBarScrimColor">#66ffffff</item>
<item name="popupColorPrimary">#ffffffff</item>
<item name="popupColorSecondary">#fff5f5f5</item>
<item name="popupColorTertiary">#ffe0e0e0</item>
<item name="isMainColorDark">false</item>
<item name="isWorkspaceDarkText">false</item>
<item name="workspaceTextColor" [MENTION=365912]and[/MENTION]roid:color/white</item>
<item name="workspaceShadowColor">#b0000000</item>
<item name="workspaceAmbientShadowColor">#33000000</item>
<item name="workspaceKeyShadowColor">#44000000</item>
<item name="workspaceStatusBarScrim">@drawable/workspace_bg</item>
<item name="widgetsTheme" [MENTION=262514]style[/MENTION]/WidgetContainerTheme</item>
</style>

Change the "allAppsNavBarScrimColor" value to "#00000000".

Alternatively, if you want to make it a semi-transparent black color, change that value to "#80000000".

SAVE THE FILE

To change the app drawer "light theme" text to white with a text shadow:

Go to /res/values/styles.xml, find this section, and perform the changes in red:

<style name="BaseIcon">
<item name="android:textColor">?android:textColorSecondary</item> [B][COLOR="red"]**Change this value to #ffffffff**[/COLOR][/B]
<item name="android:ellipsize">marquee</item>
<item name="android:gravity">center_horizontal</item>
<item name="android:layout_gravity">center</item>
<item name="android:focusable">true</item>
<item name="android:layout_width">fill_parent</item>
<item name="android:layout_height">fill_parent</item>
<item name="android:singleLine">true</item>
<item name="android:shadowColor">#b0000000</item>[B][COLOR="red"] **ADD this line**[/COLOR][/B]
<item name="android:shadowRadius">0.0</item> [B][COLOR="Red"]**Chang this value to 2.0 or 3.0. This value refers to the blur radius of the shadow.**[/COLOR][/B]
<item name="android:fontFamily">sans-serif-condensed</item>
</style>

**The BaseIcon style above also controls the folder icon text and the deep shortcut icon text. Since we've changed the text to white here, we need to change the folder icon text to a darker color so that it shows up better.

Also, since we've added a text shadow to the text to make it stand out better again light backgrounds, we need to alter the deep shortcut text to keep it looking clean.

Keep reading to find out how to do both of these things.

SAVE THE FILE

To change the color of the folder application icon text and remove its shadow:

1. Go to /res/values/styles.xml.

2. Add the code below as an entirely new style entry in the styles.xml. It doesn't really matter where it goes. Just make sure that you don't accidentally put in in the middle of another style.

2.5 The color is set by the "android:textColor" value. In my example below it's set to a dark gray (the default color). You can set the color here to whatever you want.

<style name="FolderIcon">
<item name="android:textColor">#00000000</item>
<item name="android:ellipsize">marquee</item>
<item name="android:gravity">center_horizontal</item>
<item name="android:layout_gravity">center</item>
<item name="android:focusable">true</item>
<item name="android:layout_width">fill_parent</item>
<item name="android:layout_height">fill_parent</item>
<item name="android:singleLine">true</item>
<item name="android:fontFamily">sans-serif-condensed</item>
</style>

3. Also, add the code below as another entirely new style entry in the styles.xml. It doesn't really matter where it goes. Just make sure that you don't accidentally put in in the middle of another style.

<style name="FolderApplications">
<item name="android:textColor">?android:textColorSecondary</item>
<item name="android:ellipsize">marquee</item>
<item name="android:gravity">center_horizontal</item>
<item name="android:layout_gravity">center</item>
<item name="android:focusable">true</item>
<item name="android:layout_width">fill_parent</item>
<item name="android:layout_height">fill_parent</item>
<item name="android:singleLine">true</item>
<item name="android:shadowColor">#00000000</item>
<item name="android:shadowRadius">0.0</item>
<item name="android:fontFamily">sans-serif-condensed</item>
</style>

SAVE THE FILE

4. Go to /res/layout/folder_application.xml

5. Find this line:

<com.android.launcher3.BubbleTextView android:includeFontPadding="false" launcher:iconDisplay="folder" style= [MENTION=262514]style[/MENTION]/BaseIcon"

6. Change the "style" value from [MENTION=262514]style[/MENTION]/BaseIcon to [MENTION=262514]style[/MENTION]/FolderApplications

SAVE THE FILE

7. Go to /res/layout/folder_icon.xml

8. Find this line:

<com.android.launcher3.views.DoubleShadowBubbleTextView android:layout_gravity="top" android:id="@id/folder_icon_name" android:focusable="false" android:layout_width="fill_parent" android:layout_height="fill_parent" style= [MENTION=262514]style[/MENTION]/FolderIcon" />

9. Change the "style" value from [MENTION=262514]style[/MENTION]/BaseIcon to [MENTION=262514]style[/MENTION]/FolderIcon

SAVE THE FILE

To make the status bar and navbar icons stay white when in the app drawer while using the "light theme":

1. Go to \smali\com\android\launcher3\allapps\AllAppsTransitionController.smali

2. Find this line (it should be line 1737):

invoke-direct {p0, v2}, Lcom/android/launcher3/allapps/AllAppsTransitionController;->updateLightStatusBar(F)V

3. Delete that entire line of code.

SAVE THE FILE

To make the status bar and navbar icons stay white when in the app drawer while using the "light theme" - ON THE ANDROID P DP1 LAUNCHER:

1. Go to \smali\com\android\launcher3\allapps\AllAppsTransitionController.smali

2. Delete line 528 and line 540.

SAVE THE FILE

To remove the text-shadow that got added to the deep shortcuts icon text:

1. Go to /res/values/styles.xml.

2. Add the code below as an entirely new style entry in the styles.xml. It doesn't really matter where it goes. Just make sure that you don't accidentally put in in the middle of another style.

<style name="DeepShortcutIcon">
<item name="android:textColor">#ff333333</item>
<item name="android:ellipsize">marquee</item>
<item name="android:gravity">center_horizontal</item>
<item name="android:layout_gravity">center</item>
<item name="android:focusable">true</item>
<item name="android:layout_width">fill_parent</item>
<item name="android:layout_height">fill_parent</item>
<item name="android:singleLine">true</item>
<item name="android:fontFamily">sans-serif-condensed</item>
</style>

SAVE THE FILE

3. Go to /res/layout/deep_shortcut.xml

4. Find this line:

<com.android.launcher3.shortcuts.DeepShortcutTextView android:textSize="14.0sp" android:textColor="?android:textColorPrimary" android:gravity="start|center" android:id="@id/bubble_text" android:background="?android:selectableItemBackground" android:drawablePadding="@dimen/deep_shortcut_drawable_padding" android:drawableEnd="@drawable/deep_shortcuts_drag_handle" android:fontFamily="sans-serif" android:textAlignment="viewStart" android:paddingStart="@dimen/deep_shortcuts_text_padding_start" android:paddingEnd="@dimen/popup_padding_end" launcher:layoutHorizontal="true" launcher:iconSizeOverride="@dimen/deep_shortcut_icon_size" launcher:iconDisplay="shortcut_popup" style= [MENTION=262514]style[/MENTION]/BaseIcon" />

5. At the very end of that line of code, change the "style" value from [MENTION=262514]style[/MENTION]/BaseIcon to [MENTION=262514]style[/MENTION]/DeepShortcutIcon

6. Go to /res/layout/system_shortcut.xml

7. Find this line:

<com.android.launcher3.BubbleTextView android:textSize="14.0sp" android:textColor="?android:textColorPrimary" android:gravity="start|center" android:id="@id/bubble_text" android:background="?android:selectableItemBackground" android:focusable="false" android:fontFamily="sans-serif" android:textAlignment="viewStart" android:paddingStart="@dimen/deep_shortcuts_text_padding_start" android:paddingEnd="@dimen/popup_padding_end" launcher:layoutHorizontal="true" launcher:iconDisplay="shortcut_popup" style= [MENTION=262514]style[/MENTION]/DeepShortcutIcon"

8. At the very end of that line of code, change the "style" value from [MENTION=262514]style[/MENTION]/BaseIcon to [MENTION=262514]style[/MENTION]/DeepShortcutIcon

SAVE THE FILE

To change the border-radius (the "roundess of the corners") of the home screen folders:

1. Go to /res/drawable/round_rect_primary.xml

2. Find this line:

<corners android:radius="2.0dip" />

3. Change that value to whatever you want. The higher the number, the more rounded the corners. 0.0dip would be not rounded at all.

SAVE THE FILE

Recovering from a mistake

Flash the stock Pixel 2 Launcher zip using TWRP.