TeamNewPipe/NewPipe

NewPipe crashes when used on external screen/vendor specific screen-sharing (Samsung DEX, LG Screen+, WSA)

Open

#7.865 geöffnet am 12. Feb. 2022

Auf GitHub ansehen
 (12 Kommentare) (6 Reaktionen) (0 zugewiesene Personen)Java (3.577 Forks)batch import
GUIbugdevice/software specificgood first issue

Repository-Metriken

Stars
 (38.153 Stars)
PR-Merge-Metriken
 (Durchschn. Merge 9T 17h) (17 gemergte PRs in 30 T)

Beschreibung

Checklist

Preamble

This issue combines multiple existing issues into one issue because - despite being implement by different manufactures - these results in the same bug.

Steps to reproduce the bug

  1. Play a video
  2. Open something that has uses a "popup"/dropdown in the player UI, e.g. change the resolution or subtitles

Actual behavior

App crashes

android.view.WindowManager$BadTokenException: Unable to add window -- token android.view.ViewRootImpl$W@fda8ca is not valid; is your activity running?

Expected behavior

App works as expected

Logs

Samsung DEX

  • User Action: ui error
  • Request: ACRA report ...
  • Service: none
  • Version: 0.21.13
  • OS: Linux samsung/t2sxeea/t2s:11/RP1A.200720.012/G996BXXU3AUIE:user/release-keys 11 - 30
android.view.WindowManager$BadTokenException: Unable to add window -- token android.view.ViewRootImpl$W@fda8ca is not valid; is your activity running?
	at android.view.ViewRootImpl.setView(ViewRootImpl.java:1444)
	at android.view.WindowManagerGlobal.addView(WindowManagerGlobal.java:469)
	at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:114)
	at android.widget.PopupWindow.invokePopup(PopupWindow.java:1657)
	at android.widget.PopupWindow.showAsDropDown(PopupWindow.java:1460)
	at android.widget.ListPopupWindow.show(ListPopupWindow.java:771)
	at com.android.internal.view.menu.CascadingMenuPopup.showMenu(CascadingMenuPopup.java:480)
	at com.android.internal.view.menu.CascadingMenuPopup.show(CascadingMenuPopup.java:289)
	at com.android.internal.view.menu.MenuPopupHelper.showPopup(MenuPopupHelper.java:303)
	at com.android.internal.view.menu.MenuPopupHelper.tryShow(MenuPopupHelper.java:192)
	at com.android.internal.view.menu.MenuPopupHelper.show(MenuPopupHelper.java:156)
	at android.widget.PopupMenu.show(PopupMenu.java:230)
	at org.schabi.newpipe.player.Player.onCaptionClicked(Player.java:3563)
	at org.schabi.newpipe.player.Player.onClick(Player.java:3670)
	at android.view.View.performClick(View.java:8160)
	at android.widget.TextView.performClick(TextView.java:16222)
	at android.view.View.performClickInternal(View.java:8137)
	at android.view.View.access$3700(View.java:888)
	at android.view.View$PerformClick.run(View.java:30236)
	at android.os.Handler.handleCallback(Handler.java:938)
	at android.os.Handler.dispatchMessage(Handler.java:99)
	at android.os.Looper.loop(Looper.java:246)
	at android.app.ActivityThread.main(ActivityThread.java:8633)
	at java.lang.reflect.Method.invoke(Native Method)
	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:602)
	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1130)

Windows Subsystem for Android/WSA

  • User Action: ui error ...
  • Version: 0.21.13
  • OS: Linux Android 11 - 30
android.view.WindowManager$BadTokenException: Unable to add window -- token android.view.ViewRootImpl$W@11424e0 is not valid; is your activity running?
	at android.view.ViewRootImpl.setView(ViewRootImpl.java:1071)
	at android.view.WindowManagerGlobal.addView(WindowManagerGlobal.java:409)
	at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:109)
	at android.widget.PopupWindow.invokePopup(PopupWindow.java:1576)
	at android.widget.PopupWindow.showAsDropDown(PopupWindow.java:1423)
	at android.widget.ListPopupWindow.show(ListPopupWindow.java:722)
	at com.android.internal.view.menu.CascadingMenuPopup.showMenu(CascadingMenuPopup.java:432)
	at com.android.internal.view.menu.CascadingMenuPopup.show(CascadingMenuPopup.java:247)
	at com.android.internal.view.menu.MenuPopupHelper.showPopup(MenuPopupHelper.java:283)
	at com.android.internal.view.menu.MenuPopupHelper.tryShow(MenuPopupHelper.java:178)
	at com.android.internal.view.menu.MenuPopupHelper.show(MenuPopupHelper.java:142)
	at android.widget.PopupMenu.show(PopupMenu.java:230)
	at org.schabi.newpipe.player.Player.onQualitySelectorClicked(Player.java:3532)
	at org.schabi.newpipe.player.Player.onClick(Player.java:3664)
	at android.view.View.performClick(View.java:7448)
	at android.view.View.performClickInternal(View.java:7425)
	at android.view.View.access$3600(View.java:810)
	at android.view.View$PerformClick.run(View.java:28305)
	at android.os.Handler.handleCallback(Handler.java:938)
	at android.os.Handler.dispatchMessage(Handler.java:99)
	at android.os.Looper.loop(Looper.java:223)
	at android.app.ActivityThread.main(ActivityThread.java:7664)
	at java.lang.reflect.Method.invoke(Native Method)
	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592)
	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:947)

LG screen+

{
    "user_action": "ui error",
    ...
    "service": "none",
    "package": "org.schabi.newpipe",
    "version": "0.21.16",
    "os": "Linux lge/caymanlm_e/caymanlm:11/RKQ1.201105.002/212521942c7f7.COM1_EU:user/release-keys 11 - 30",
    "time": "2022-02-12 15:10",
    "exceptions": [
        "android.view.WindowManager$BadTokenException: Unable to add window -- token android.view.ViewRootImpl$WEx@954281e is not valid; is your activity running?
			at android.view.ViewRootImpl.setView(ViewRootImpl.java:1106)
			at android.view.WindowManagerGlobal.addView(WindowManagerGlobal.java:437)
			at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:116)
			at android.widget.PopupWindow.invokePopup(PopupWindow.java:1636)
			at android.widget.PopupWindow.showAsDropDown(PopupWindow.java:1445)
			at android.widget.ListPopupWindow.show(ListPopupWindow.java:742)
			at com.android.internal.view.menu.CascadingMenuPopup.showMenu(CascadingMenuPopup.java:433)
			at com.android.internal.view.menu.CascadingMenuPopup.show(CascadingMenuPopup.java:248)
			at com.android.internal.view.menu.MenuPopupHelper.showPopup(MenuPopupHelper.java:283)
			at com.android.internal.view.menu.MenuPopupHelper.tryShow(MenuPopupHelper.java:178)
			at com.android.internal.view.menu.MenuPopupHelper.show(MenuPopupHelper.java:142)
			at android.widget.PopupMenu.show(PopupMenu.java:230)
			at org.schabi.newpipe.player.Player.onQualitySelectorClicked(Player.java:3513)
			at org.schabi.newpipe.player.Player.onClick(Player.java:3645)
			at android.view.View.performClick(View.java:7461)
			at android.view.View.performClickInternal(View.java:7438)
			at android.view.View.access$4000(View.java:815)
			at android.view.View$PerformClick.run(View.java:28396)
			at android.os.Handler.handleCallback(Handler.java:938)
			at android.os.Handler.dispatchMessage(Handler.java:99)
			at android.os.Looper.loop(Looper.java:223)
			at android.app.ActivityThread.main(ActivityThread.java:7867)
			at java.lang.reflect.Method.invoke(Native Method)
			at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592)
			at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:981)
	"
    ],
    "user_comment": ""
}

Device info

  • Android version/Custom ROM version: Android 11+

Affected platforms:

  • Samsung DEX #7391
  • Windows Subsystem for Android/WSA #7396
  • LG screen+ #7864

Contributor Guide