Bug 26664 - [Android] MasterBehavior.Split Not Working on Device
Summary: [Android] MasterBehavior.Split Not Working on Device
Alias: None
Product: Forms
Classification: Xamarin
Component: Forms ()
Version: 1.3.1
Hardware: PC Mac OS
: Normal normal
Target Milestone: ---
Assignee: Bugzilla
Depends on:
Reported: 2015-02-02 19:51 UTC by Jimmy [MSFT]
Modified: 2015-05-15 16:41 UTC (History)
6 users (show)

Is this bug a regression?: ---
Last known good build:

Sample Project Used to Test Behavior (468.50 KB, application/zip)
2015-02-02 19:51 UTC, Jimmy [MSFT]

Notice (2018-05-24): bugzilla.xamarin.com is now in read-only mode.

Please join us on Visual Studio Developer Community and in the Xamarin and Mono organizations on GitHub to continue tracking issues. Bugzilla will remain available for reference in read-only mode. We will continue to work on open Bugzilla bugs, copy them to the new locations as needed for follow-up, and add the new items under Related Links.

Our sincere thanks to everyone who has contributed on this bug tracker over the years. Thanks also for your understanding as we make these adjustments and improvements for the future.

Please create a new report on Developer Community or GitHub with your current version information, steps to reproduce, and relevant error messages or log files if you are hitting an issue that looks similar to this resolved bug and you do not yet see a matching new report.

Related Links:

Description Jimmy [MSFT] 2015-02-02 19:51:54 UTC
Created attachment 9610 [details]
Sample Project Used to Test Behavior

From desk case: https://xamarin.desk.com/agent/case/121880


> MasterBehavior = MasterBehavior.Split 

on a MasterDetailPage does not display the Master and Detail pages side by side on a Nexus 7 device. I could not reproduce the issue on a Nexus 7(2012) emulator running KitKat. 

I have attached a modified FormsGallery sample project(Forms 1.3.1) that I used on the emulator and had customer run as well. The customer confirmed that it did not work as expected on their Nexus 7 device running 4.4.2.

==Expected Behavior===
Both Master and Detail pages should be displayed side by side (width permitting).

===Actual Behavior===
The Master page operates as a popover and is hidden by default until the user swipes from the left. 

> I've asked the customer for their build system information and if they've tested on other devices.
Comment 1 Ram Chandra 2015-02-03 09:36:13 UTC
I have checked this issue and I am able to reproduce this issue.

Observations: I observed that when MasterBehavior property is set to MasterBehavior.Split, MasterDetailPage does not display the Master and Detail pages side by side on a Nexus 7 device (4.4.4). When I comment the following line MasterDetailPage  display the Master and Detail pages side by side on a Nexus 7.

> MasterBehavior = MasterBehavior.Split  // comment this line.

I have checked the same for other device like samsung Note 3 ( 4.4.4) and everything works fine on it.

Screencast: http://www.screencast.com/t/HKelztn5

Application Output: https://gist.github.com/saurabh360/c05608f6c540254219f0
IDE logs: https://gist.github.com/saurabh360/63cd43ee5e7d51e2f0e4
Device logs: https://gist.github.com/saurabh360/8ce5e0f73888decde512

Please let me know if I can provide more info to this issue.

Environment Info:

Xamarin.Forms: /

=== Xamarin Studio ===

Version 5.7.1 (build 16)
Installation UUID: 6ea47b0d-1852-4aaf-808d-373ff0a5002b
	Mono 3.12.0 ((detached/a813491)
	GTK+ 2.24.23 (Raleigh theme)

	Package version: 312000068

=== Apple Developer Tools ===

Xcode 6.1 (6604)
Build 6A1052d

=== Xamarin.iOS ===

Version: (Business Edition)
Hash: 3b3ef43
Build date: 2015-01-24 09:42:21-0500

=== Xamarin.Android ===

Version: (Business Edition)
Android SDK: /Users/jatin66/Desktop/Backup/android-sdk-macosx
	Supported Android versions:
		1.6    (API level 4)
		2.1    (API level 7)
		2.2    (API level 8)
		2.3    (API level 10)
		3.1    (API level 12)
		4.0    (API level 14)
		4.0.3  (API level 15)
		4.1    (API level 16)
		4.2    (API level 17)
		4.3    (API level 18)
		4.4    (API level 19)
		4.4.87 (API level 20)
		5.0    (API level 21)
Java SDK: /usr
java version "1.7.0_65"
Java(TM) SE Runtime Environment (build 1.7.0_65-b17)
Java HotSpot(TM) 64-Bit Server VM (build 24.65-b04, mixed mode)

=== Xamarin.Mac ===

Version: (Business Edition)

=== Build Information ===

Release ID: 507010016
Git revision: f12fcaf4707ab436bee2df6263eb5333197b262c
Build date: 2015-02-01 21:06:05-05
Xamarin addins: f7b7d34419c9ec24501bfa7c658e80a6305613e0

=== Operating System ===

Mac OS X 10.10.0
Darwin Jatin66s-iMac.local 14.0.0 Darwin Kernel Version 14.0.0
    Fri Sep 19 00:26:44 PDT 2014
    root:xnu-2782.1.97~2/RELEASE_X86_64 x86_64
Comment 2 Jimmy [MSFT] 2015-02-03 13:19:25 UTC
Playing around in the emulator more, I found that when 

> MasterBehavior = MasterBehavior.Split

is set and pushed when the emulator is in portrait mode, the views are split as expected. You can even rotate the emulator and the views continue to be split.

However, when the emulator is in landscape and the sample app is pushed, the views are not split and the master page is hidden. Rotating the emulator to portrait mode does not split the views either.
Comment 6 Jason Smith [MSFT] 2015-05-15 16:41:41 UTC
We used a crossover point for tablet/phone as 600dp on the smallest axis. The nexus 7 is right in the awkward zone and just happens to have particularly large dips for its physical size.

Unfortunately we cannot go back and change this now as it is a large behavior change.