private void RefreshMasterBehavior(MasterBehaviorType masterBehaviorType) { int detailWidthRequest = 0; Gdk.Point point = default(Gdk.Point); switch (_masterBehaviorType) { case MasterBehaviorType.Split: detailWidthRequest = _lastAllocation.Width - DefaultMasterWidth; point = new Gdk.Point(_master.WidthRequest, 0); break; case MasterBehaviorType.Default: case MasterBehaviorType.Popover: detailWidthRequest = _lastAllocation.Width; point = new Gdk.Point(0, 0); break; } if (detailWidthRequest >= 0) { _detail.WidthRequest = detailWidthRequest; _detail.MoveTo(point.X, point.Y); } }
public MasterDetailPage() { _animationsEnabled = false; _masterBehaviorType = MasterBehaviorType.Default; // Master Stuff _masterContainerWrapper = new EventBox(); _masterContainer = new VBox(false, 0); _titleContainer = new MasterDetailMasterTitleContainer(); _titleContainer.HamburguerClicked += OnHamburgerClicked; _titleContainer.HeightRequest = GtkToolbarConstants.ToolbarHeight; _masterContainer.PackStart(_titleContainer, false, true, 0); _master = new EventBox(); _masterContainer.PackEnd(_master, false, true, 0); _masterContainerWrapper.Add(_masterContainer); // Detail Stuff _detail = new EventBox(); Add(_detail); Add(_masterContainerWrapper); }