ApplicationInteractionMode GetInteractionMode() { ApplicationInteractionMode intaractionMode = ApplicationInteractionMode.Touch; if (_appearanceSettings.OverrideInteractionMode.HasValue) { intaractionMode = _appearanceSettings.OverrideInteractionMode.Value; } else { if (DeviceInfo.Idiom == DeviceIdiom.Desktop) { intaractionMode = ApplicationInteractionMode.Mouse; } else if (DeviceInfo.Idiom == DeviceIdiom.Phone || DeviceInfo.Idiom == DeviceIdiom.Tablet) { intaractionMode = ApplicationInteractionMode.Touch; } else if (DeviceInfo.Idiom == DeviceIdiom.TV || DeviceTypeHelper.IsXbox) { intaractionMode = ApplicationInteractionMode.Controller; } } return(intaractionMode); }
ApplicationLayout GetAppLayout(ApplicationInteractionMode intaractionMode) { ApplicationLayout layout = ApplicationLayout.Mobile; if (intaractionMode == ApplicationInteractionMode.Mouse || intaractionMode == ApplicationInteractionMode.Touch ) { var width = Window.Current.Bounds.Width; if (width <= 519) { layout = ApplicationLayout.Mobile; } else if (width <= 799) { layout = ApplicationLayout.Tablet; } else { layout = ApplicationLayout.Desktop; } } else if (intaractionMode == ApplicationInteractionMode.Controller) { layout = ApplicationLayout.TV; } return(layout); }
void RefreshAppLayout() { InteractionMode = GetInteractionMode(); AppLayout = GetAppLayout(InteractionMode); System.Diagnostics.Debug.WriteLine($"InteractionMode: {InteractionMode}, ApplicationLayout: {AppLayout} (override: {_appearanceSettings.OverrideInteractionMode.HasValue})"); }