#!/system/bin/sh
# Fuerza mosaico 16 canales en DMSS (preSplit=16). Compatible con sh de Android (sin head -n -1).

CFG=/data/data/com.mm.android.DMSS/shared_prefs/dss_config.xml
PKG=com.mm.android.DMSS

[ -f "$CFG" ] || exit 0

if ! grep -q '<map>' "$CFG" 2>/dev/null; then
  cat > "$CFG" << 'EOF'
<?xml version='1.0' encoding='utf-8' standalone='yes' ?>
<map>
    <int name="preSplit" value="16" />
    <boolean name="privewMaxWindow" value="true" />
</map>
EOF
else
  if grep -q 'name="preSplit"' "$CFG"; then
    sed -i 's/name="preSplit" value="[0-9]*"/name="preSplit" value="16"/' "$CFG"
  else
    sed -i 's|</map>|    <int name="preSplit" value="16" />\n</map>|' "$CFG"
  fi
  if grep -q 'name="privewMaxWindow"' "$CFG"; then
    sed -i 's/name="privewMaxWindow" value="false"/name="privewMaxWindow" value="true"/' "$CFG"
  else
    sed -i 's|</map>|    <boolean name="privewMaxWindow" value="true" />\n</map>|' "$CFG"
  fi
fi

UID=$(dumpsys package "$PKG" 2>/dev/null | grep userId= | head -1 | sed 's/.*userId=//;s/ .*//')
[ -n "$UID" ] && chown "$UID:$UID" "$CFG" 2>/dev/null
chmod 660 "$CFG" 2>/dev/null
