Reputation: 71
I want to get notified from my background service when the user switches to multi-window mode. Is there a way to get this information by a service other than the activities involved in the process.
Also I have noticed that when an overlay is clicked on the area of the foreground window it automatically switches to the activity under the area. Can this be prevented?
Upvotes: 6
Views: 6025
Reputation: 121
You must add ViewTreeObserver. And check if device enter in Multi-Window mode
getActivity().isInMultiWindowMode()
Upvotes: 5
Reputation: 4415
isInMultiWindowMode() is added in API 24 to check device is in Multi window or not, it returns a boolean value. when ever device goes to Multi window it triggers onConfigurationChanged()
method. There you can handle Landscape and portrait mode.
@Override
public void onConfigurationChanged(Configuration newConfig) {
super.onConfigurationChanged(newConfig);
if(newConfig.orientation == Configuration.ORIENTATION_LANDSCAPE)
{
//do something
}else{
}
}
Upvotes: 1