Skip to content

[Bug] VC 207 produces decorationless freeform windows on AOSP 16. #352

@RokeJulianLockhart

Description

@RokeJulianLockhart

What The Problem Is

@.Date.20251226T021307+0000.Type.Video.Origin.Android.Emulator.-.Resizable_Experimental_2.5554.webm

Details

Image

1

How To Reproduce

  1. #!/usr/bin/env sh
    settings put global enable_freeform_support 1 && \
    settings put secure force_resizable_activities 1 && \
    curl https://github.com/farmerbb/Taskbar/releases/download/207/Taskbar-6.2.2.apk && \
    pm install ./Taskbar-6.2.2.apk && \
    adb shell monkey -p com.farmerbb.taskbar 1
  2. At cmd activity start --user 0 -a android.intent.action.VIEW -n com.farmerbb.taskbar/com.farmerbb.taskbar.activity.MainActivity -f 0 com.farmerbb.taskbar, apply checked="true" to resource-id="com.farmerbb.taskbar:id/the_switch":

    #!/usr/bin/env bash
    adb exec-out uiautomator dump /dev/tty \
    | sed 's/></>\n</g' \
    | awk '
      /class="android.widget.Switch"/ &&
      /resource-id="com.farmerbb.taskbar:id\/the_switch"/ &&
      /clickable="true"/ &&
      match($0, /bounds="\[([0-9]+),([0-9]+)\]\[([0-9]+),([0-9]+)\]"/, b) {
    
        cx = int((b[1] + b[3]) / 2)
        cy = int((b[2] + b[4]) / 2)
    
        system("adb shell input tap " cx " " cy)
        exit
      }
    '

    7

  3. Access "Freeform Mode":

    #!/usr/bin/env bash
    adb exec-out uiautomator dump /dev/tty \
    | sed 's/></>\n</g' \
    | awk '
      /class="android.widget.TextView"/ &&
      /resource-id="android:id\/title"/ &&
      /text="Freeform mode"/ &&
      match($0, /bounds="\[([0-9]+),([0-9]+)\]\[([0-9]+),([0-9]+)\]"/, b) {
    
        cx = int((b[1] + b[3]) / 2)
        cy = int((b[2] + b[4]) / 2)
    
        system("adb shell input tap " cx " " cy)
        exit
      }
    '

    7

  4. Enable "Freeform window support":

    #!/usr/bin/env bash
    adb exec-out uiautomator dump /dev/tty \
    | sed 's/></>\n</g' \
    | awk '
      /class="android.widget.TextView"/ &&
      /resource-id="android:id\/title"/ &&
      /text="Freeform window support"/ &&
      match($0, /bounds="\[([0-9]+),([0-9]+)\]\[([0-9]+),([0-9]+)\]"/, b) {
    
        cx = int((b[1] + b[3]) / 2)
        cy = int((b[2] + b[4]) / 2)
    
        system("adb shell input tap " cx " " cy)
        exit
      }
    '

    7

  5. Invoke an application via Taskbar's overlay.

My Environment

  • The Application

    versionCode=207
    versionName=6.2.2

    9

  • The OS

    [ro.build.version.release]: [16]
    [ro.build.display.id]: [sdk_gphone16k_x86_64-userdebug 16 BE4B.251210.005 14574095 dev-keys]

Footnotes

  1. #!usr/bin/env sh
    kdotool windowsize "$(sleep 2; kdotool getactivewindow)" $(adb shell wm size | awk -F'[ x]' '/Physical size:/ { printf "%d %d\n", $3/2, $4/2 }')
    

    2 3 4

  2. reddit.com/r/kde/comments/1irhw1p/comment/nvykexm

  3. reddit.com/r/kde/comments/1l8x4ab/comment/mxclkho

  4. chatgpt.com/s/t_694dee5446a48191b42d5fe472c70803 5

  5. chatgpt.com/c/694debc0-78d4-8333-94d9-1d95abe493d2 6

  6. stackoverflow.com/revisions/27398555/3

  7. chatgpt.com/s/t_694dedc42e9881919f89ac7606f71689 8 2 3

  8. chatgpt.com/c/694de887-eecc-8331-8a6c-5499d62a7ad5

  9. stackoverflow.com/revisions/11943078/6

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions