[GUIDE] Changing min width/DPI of MIUI 9 without rooting

nicholaschum

Substratum Development Leader / Inactive Recognize
Feb 3, 2011
6,079
13,833
0
University of Toronto
plus.google.com
Hi all, this may have its own dedicated thread but I was not able to find it during my time with my Mi 6 and Mix 2.

When I moved over to MIUI I was shocked that they removed Min Width in Developer Options, because opening apps such as Telegram gave it such a horrid text size I could not adjust.

This will require you to have 5 minutes of your lunch break, a PC, and also depending on where you are accessing your Mi device, a VPN.

ATTENTION: To those who have used this command before on other devices, the device WILL RETAIN the density after a reboot. Don't worry about doing this every reboot, because you DO NOT HAVE TO.

NOTE: This will NOT cause any reboots of any kind, and you can still use themes from MIUI or wherever. The only apps I have noticed have a weird design will be the Themes app, where the app will look off tilted. Other than that, Xiaomi should have just left this in instead of neglecting their own app's density adaptation.


I am located in Hong Kong, or a China based region!

  1. Turn off wifi, and ensure your device is linked to a Mi Account
  2. Go to Settings -> About Phone -> Tap MIUI Version 7 times
  3. Go back, and go to Additional Settings -> Developer Options -> USB Debugging
  4. Then click on USB Debugging (Security settings)
  5. Go through the three prompted Apply dialogs with countdown, and ensure the toggle is enabled.
  6. If it isn't, ensure your wifi is disabled, mobile data is enabled and Mi account is linked
  7. Go to a PC with adb set up: https://forum.xda-developers.com/showthread.php?t=2588979 (Windows)
  8. Open a Command prompt and type:
    Code:
    adb shell
    wm density 380
    exit
  9. I picked 380, but you can make it smaller
  10. To reset the density, type:
    Code:
    adb shell
    wm density reset
    exit


I am not living in a China based region!

  1. Turn off wifi, and ensure your device is linked to a Mi Account
  2. Install a VPN, such as Tunnelbear, and VPN back to an HK or China server (REQUIRED): https://play.google.com/store/apps/details?id=com.tunnelbear.android&hl=en
  3. Go to Settings -> About Phone -> Tap MIUI Version 7 times
  4. Go back, and go to Additional Settings -> Developer Options -> USB Debugging
  5. Then click on USB Debugging (Security settings)
  6. Go through the three prompted Apply dialogs with countdown, and ensure the toggle is enabled.
  7. If it isn't, ensure your wifi is disabled, mobile data is enabled and Mi account is linked
  8. Go to a PC with adb set up: https://forum.xda-developers.com/showthread.php?t=2588979 (Windows)
  9. Open a Command prompt and type:
    Code:
    adb shell
    wm density 380
    exit
  10. I picked 380, but you can make it smaller
  11. To reset the density, type:
    Code:
    adb shell
    wm density reset
    exit


Screenshots:



 

bleached45

Senior Member
Nov 16, 2010
1,031
470
0
Michigan
I assume the vpn is for turning on ADB debugging? Does the global ROM require this as well? I'm 99% that I've used it without a vpn (though, my device is unlocked). I can't confirm now though as I'm no longer on MIUI.
 

nicholaschum

Substratum Development Leader / Inactive Recognize
Feb 3, 2011
6,079
13,833
0
University of Toronto
plus.google.com
I assume the vpn is for turning on ADB debugging? Does the global ROM require this as well? I'm 99% that I've used it without a vpn (though, my device is unlocked). I can't confirm now though as I'm no longer on MIUI.
USB Debugging (Security settings) only.

I am on global ROM.

Having your device BL unlocked means most, if not all restrictions have been lifted.
 
  • Like
Reactions: bleached45

rxl.noir

Senior Member
Nov 2, 2014
241
123
63
Bandung
I've tried the adb shell method a few times before on MIUI 9 on my Mi4 (from 480 to 400), but it wrecks the notification shade, especially on the quick tiles (it enlarge by themselves) and some notification row icons (somehow the icons ended up having small black-ish frame overlaid on the top-left). Possibly only on MM MIUI 9, since that's all Mi4 gets at best.

Is it because of how MIUI theming heavily uses bitmaps (with flawed asset scaling on their own default theme) rather than vector drawables for their glyphs?
 

OverLord2901

Senior Member
Sep 6, 2017
99
17
0
Great work around buddy, but in the end you'll have to change the rows and columns size too as those look horrid then.
Though I used EasyDPI and Xposed to rearrange these BASIC settings, one can always use the Default Theme Layouts.
 

nicholaschum

Substratum Development Leader / Inactive Recognize
Feb 3, 2011
6,079
13,833
0
University of Toronto
plus.google.com
I've tried the adb shell method a few times before on MIUI 9 on my Mi4 (from 480 to 400), but it wrecks the notification shade, especially on the quick tiles (it enlarge by themselves) and some notification row icons (somehow the icons ended up having small black-ish frame overlaid on the top-left). Possibly only on MM MIUI 9, since that's all Mi4 gets at best.

Is it because of how MIUI theming heavily uses bitmaps (with flawed asset scaling on their own default theme) rather than vector drawables for their glyphs?
Hmm that's weird, I never had issues with my notification shade.

That is a possibility if they don't use vector drawables, but I believe it's just like how Samsung once upon a time made all their apps at a fixed DPI so scaling just looks really bad.

I've been using default theme and another theme called Flam[DD] and changing DPI works flawlessly.



Sent from my Xiaomi Mi MIX 2 using XDA Labs
 

nicholaschum

Substratum Development Leader / Inactive Recognize
Feb 3, 2011
6,079
13,833
0
University of Toronto
plus.google.com
Great work around buddy, but in the end you'll have to change the rows and columns size too as those look horrid then.
Though I used EasyDPI and Xposed to rearrange these BASIC settings, one can always use the Default Theme Layouts.
Do you mean for the notification toggles? Yeah, it's pretty bad, but I usually don't root so it's better than seeing huge texts in apps haha.

Sent from my Xiaomi Mi MIX 2 using XDA Labs