Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

BottomAppBar Android P ; Invalid Region.Op - only INTERSECT and DIFFERENCE are allowed #235

Closed
NW0LC opened this issue Nov 28, 2018 · 10 comments

Comments

@NW0LC
Copy link

NW0LC commented Nov 28, 2018

com.google.android.material:material:1.1.0-alpha01

@douo
Copy link

douo commented Nov 29, 2018

Same ISSUE
Device: Pixel 2
OS: Android 9
IDE: Android Studio 3.4 C5

Even in android studio layout preview:

java.lang.IllegalArgumentException: Invalid Region.Op - only INTERSECT and DIFFERENCE are allowed
	at android.graphics.Canvas.checkValidClipOp(Canvas.java:779)
	at android.graphics.Canvas.clipRect(Canvas.java:826)
	at com.google.android.material.shape.MaterialShapeDrawable.prepareCanvasForShadow(MaterialShapeDrawable.java:850)
	at com.google.android.material.shape.MaterialShapeDrawable.draw(MaterialShapeDrawable.java:746)
	at android.view.View.drawBackground(View.java:20412)
	at android.view.View.draw_Original(View.java:20198)
	at android.view.View_Delegate.draw(View_Delegate.java:56)
	at android.view.View.draw(View.java:20177)
	at android.view.View.draw_Original(View.java:20077)
	at android.view.View_Delegate.draw(View_Delegate.java:68)
	at android.view.View.draw(View.java:19849)
	at android.view.ViewGroup.drawChild_Original(ViewGroup.java:4333)
	at android.view.ViewGroup_Delegate.drawChild(ViewGroup_Delegate.java:67)
	at android.view.ViewGroup.drawChild(ViewGroup.java:4333)
	at androidx.coordinatorlayout.widget.CoordinatorLayout.drawChild(CoordinatorLayout.java:1246)
	at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4112)
	at android.view.View.draw_Original(View.java:20075)
	at android.view.View_Delegate.draw(View_Delegate.java:68)
	at android.view.View.draw(View.java:19849)
	at android.view.ViewGroup.drawChild_Original(ViewGroup.java:4333)
	at android.view.ViewGroup_Delegate.drawChild(ViewGroup_Delegate.java:67)
	at android.view.ViewGroup.drawChild(ViewGroup.java:4333)
	at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4112)
	at android.view.View.draw_Original(View.java:20075)
	at android.view.View_Delegate.draw(View_Delegate.java:68)
	at android.view.View.draw(View.java:19849)
	at android.view.ViewGroup.drawChild_Original(ViewGroup.java:4333)
	at android.view.ViewGroup_Delegate.drawChild(ViewGroup_Delegate.java:67)
	at android.view.ViewGroup.drawChild(ViewGroup.java:4333)
	at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4112)
	at android.view.View.draw_Original(View.java:20210)
	at android.view.View_Delegate.draw(View_Delegate.java:56)
	at android.view.View.draw(View.java:20177)
	at com.android.layoutlib.bridge.impl.RenderSessionImpl.renderAndBuildResult(RenderSessionImpl.java:403)
	at com.android.layoutlib.bridge.impl.RenderSessionImpl.renderAndBuildResult(RenderSessionImpl.java:555)
	at com.android.layoutlib.bridge.impl.RenderSessionImpl.render(RenderSessionImpl.java:424)
	at com.android.layoutlib.bridge.BridgeRenderSession.render(BridgeRenderSession.java:120)
	at com.android.ide.common.rendering.api.RenderSession.render(RenderSession.java:151)
	at com.android.ide.common.rendering.api.RenderSession.render(RenderSession.java:133)
	at com.android.tools.idea.rendering.RenderTask.lambda$null$8(RenderTask.java:744)
	at java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1590)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
	at java.lang.Thread.run(Thread.java:745)

@gregkorossy
Copy link

Happens in the API 28 emulator, too.

@ldjcmu
Copy link
Contributor

ldjcmu commented Nov 29, 2018

Can you provide a small code/layout sample, so we can understand how this might be happening? BottomAppBar works for me on P, so some setup difference is causing the issue; anything you can provide to help us track it down would be great.

@NW0LC
Copy link
Author

NW0LC commented Nov 30, 2018 via email

@9and3r
Copy link

9and3r commented Nov 30, 2018

I also have this problem with 1.1.0-alpha01 version and Android P.

The issue seems to be the same as https://issuetracker.google.com/issues/118921801. According to that link this was fixed in this commit.

@milanPansuriya
Copy link

milanPansuriya commented Dec 4, 2018

@ldjcmu

Still, I am facing this issue
Device Nokia 7+
OS: Pie
Android Studio Version: 3.2.1
Lib version: implementation 'com.google.android.material:material:1.1.0-alpha01'

E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.wmt.androidxsupport, PID: 4156
java.lang.IllegalArgumentException: Invalid Region.Op - only INTERSECT and DIFFERENCE are allowed
at android.graphics.Canvas.checkValidClipOp(Canvas.java:779)
at android.graphics.Canvas.clipRect(Canvas.java:826)
at com.google.android.material.shape.MaterialShapeDrawable.prepareCanvasForShadow(MaterialShapeDrawable.java:850)
at com.google.android.material.shape.MaterialShapeDrawable.draw(MaterialShapeDrawable.java:746)
at android.view.View.getDrawableRenderNode(View.java:20463)
at android.view.View.drawBackground(View.java:20399)
at android.view.View.draw(View.java:20198)
at android.view.View.updateDisplayListIfDirty(View.java:19082)
at android.view.View.draw(View.java:19935)
at android.view.ViewGroup.drawChild(ViewGroup.java:4333)
at androidx.coordinatorlayout.widget.CoordinatorLayout.drawChild(CoordinatorLayout.java:1246)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4112)
at android.view.View.updateDisplayListIfDirty(View.java:19073)
at android.view.View.draw(View.java:19935)
at android.view.ViewGroup.drawChild(ViewGroup.java:4333)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4112)
at android.view.View.updateDisplayListIfDirty(View.java:19073)
at android.view.View.draw(View.java:19935)
at android.view.ViewGroup.drawChild(ViewGroup.java:4333)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4112)
at android.view.View.updateDisplayListIfDirty(View.java:19073)
at android.view.View.draw(View.java:19935)
at android.view.ViewGroup.drawChild(ViewGroup.java:4333)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4112)
at android.view.View.updateDisplayListIfDirty(View.java:19073)
at android.view.View.draw(View.java:19935)
at android.view.ViewGroup.drawChild(ViewGroup.java:4333)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4112)
at android.view.View.updateDisplayListIfDirty(View.java:19073)
at android.view.View.draw(View.java:19935)
at android.view.ViewGroup.drawChild(ViewGroup.java:4333)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4112)
at android.view.View.draw(View.java:20210)
at com.android.internal.policy.DecorView.draw(DecorView.java:780)
at android.view.View.updateDisplayListIfDirty(View.java:19082)
at android.view.ThreadedRenderer.updateViewTreeDisplayList(ThreadedRenderer.java:686)
at android.view.ThreadedRenderer.updateRootDisplayList(ThreadedRenderer.java:692)
at android.view.ThreadedRenderer.draw(ThreadedRenderer.java:801)
at android.view.ViewRootImpl.draw(ViewRootImpl.java:3311)
at android.view.ViewRootImpl.performDraw(ViewRootImpl.java:3115)
at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:2484)
at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1460)
at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:7183)
at android.view.Choreographer$CallbackRecord.run(Choreographer.java:949)
at android.view.Choreographer.doCallbacks(Choreographer.java:761)
at android.view.Choreographer.doFrame(Choreographer.java:696)
at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:935)
at android.os.Handler.handleCallback(Handler.java:873)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:193)
at android.app.ActivityThread.main(ActivityThread.java:6680)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858)

@ldjcmu
Copy link
Contributor

ldjcmu commented Dec 4, 2018

@milanPansuriya Yes, you will see this issue with that version. The presumed fix is not in a release (alpha or otherwise) yet.

@calmmycode
Copy link

calmmycode commented Dec 6, 2018

Same problem here on Pixel 1 gen Android P. But on Huawei P20 pro Android 8.1 no problems. I use 1.1.0-alpha01. Really need fix because of 1.0.0 does not support elevation for bottom app bar. @ldjcmu

@cketcham
Copy link
Contributor

cketcham commented Dec 7, 2018

1.0.0-alpha02 will be released soon and has a fix for this.

@cketcham cketcham closed this as completed Dec 7, 2018
@SourabhSNath
Copy link

This was an unexpected end.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

9 participants