private async Task HideShowMenu(bool ForceClose) { try { Int32 HeaderTargetSize = Convert.ToInt32(stackpanel_Header.Tag); Int32 HeaderCurrentSize = Convert.ToInt32(stackpanel_Header.Height); if (HeaderCurrentSize < HeaderTargetSize) { await HideShowHeader(false); } else { Int32 MenuTargetSize = Convert.ToInt32(grid_PopupMenu.Tag); Int32 MenuCurrentSize = Convert.ToInt32(grid_PopupMenu.Height); if (ForceClose || MenuCurrentSize == MenuTargetSize) { AVAnimations.Ani_Height(grid_PopupMenu, 0, false, 0.075); } else { AVAnimations.Ani_Height(grid_PopupMenu, MenuTargetSize, true, 0.075); } } } catch { } }
//User Interface - Buttons void HideShowMenu(bool ForceClose) { try { int MenuTargetSize = Convert.ToInt32(grid_PopupMenu.Tag); int MenuCurrentSize = Convert.ToInt32(grid_PopupMenu.Height); if (ForceClose || MenuCurrentSize == MenuTargetSize) { AVAnimations.Ani_Height(grid_PopupMenu, 0, false, 0.075); } else { AVAnimations.Ani_Height(grid_PopupMenu, MenuTargetSize, true, 0.075); } } catch { } }
//Handle main menu tapped async void lb_Menu_Tapped(object sender, TappedRoutedEventArgs e) { try { if (lb_Menu.SelectedIndex >= 0 && ((StackPanel)lb_Menu.SelectedItem).IsHitTestVisible) { StackPanel SelStackPanel = (StackPanel)lb_Menu.SelectedItem; if (SelStackPanel.Name == "menuButtonTile") { WeekNumberLoad(); await BatteryLevelLoad(); await CurrentTileLoad(); AVAnimations.Ani_Visibility(tab_Tile, true, true, 0.25); tab_Weather.Visibility = Visibility.Collapsed; tab_Countdown.Visibility = Visibility.Collapsed; tab_Stopwatch.Visibility = Visibility.Collapsed; tab_Timer.Visibility = Visibility.Collapsed; tab_World.Visibility = Visibility.Collapsed; tab_Settings.Visibility = Visibility.Collapsed; tab_Help.Visibility = Visibility.Collapsed; } else if (SelStackPanel.Name == "menuButtonWeather") { await WeatherLoad(); tab_Tile.Visibility = Visibility.Collapsed; AVAnimations.Ani_Visibility(tab_Weather, true, true, 0.25); tab_Countdown.Visibility = Visibility.Collapsed; tab_Stopwatch.Visibility = Visibility.Collapsed; tab_Timer.Visibility = Visibility.Collapsed; tab_World.Visibility = Visibility.Collapsed; tab_Settings.Visibility = Visibility.Collapsed; tab_Help.Visibility = Visibility.Collapsed; } else if (SelStackPanel.Name == "menuButtonCountdown") { await CountdownLoad(); tab_Tile.Visibility = Visibility.Collapsed; tab_Weather.Visibility = Visibility.Collapsed; AVAnimations.Ani_Visibility(tab_Countdown, true, true, 0.25); tab_Stopwatch.Visibility = Visibility.Collapsed; tab_Timer.Visibility = Visibility.Collapsed; tab_World.Visibility = Visibility.Collapsed; tab_Settings.Visibility = Visibility.Collapsed; tab_Help.Visibility = Visibility.Collapsed; } else if (SelStackPanel.Name == "menuButtonStopwatch") { await StopwatchLoad(); tab_Tile.Visibility = Visibility.Collapsed; tab_Weather.Visibility = Visibility.Collapsed; tab_Countdown.Visibility = Visibility.Collapsed; AVAnimations.Ani_Visibility(tab_Stopwatch, true, true, 0.25); tab_Timer.Visibility = Visibility.Collapsed; tab_World.Visibility = Visibility.Collapsed; tab_Settings.Visibility = Visibility.Collapsed; tab_Help.Visibility = Visibility.Collapsed; } else if (SelStackPanel.Name == "menuButtonTimer") { TimersLoad(); tab_Tile.Visibility = Visibility.Collapsed; tab_Weather.Visibility = Visibility.Collapsed; tab_Countdown.Visibility = Visibility.Collapsed; tab_Stopwatch.Visibility = Visibility.Collapsed; AVAnimations.Ani_Visibility(tab_Timer, true, true, 0.25); tab_World.Visibility = Visibility.Collapsed; tab_Settings.Visibility = Visibility.Collapsed; tab_Help.Visibility = Visibility.Collapsed; } else if (SelStackPanel.Name == "menuButtonSleepingScreen") { Frame.Navigate(typeof(SleepingScreen)); } else if (SelStackPanel.Name == "menuButtonFlashLight") { Frame.Navigate(typeof(FlashlightScreen)); } else if (SelStackPanel.Name == "menuButtonWorld") { WorldLoad(); tab_Tile.Visibility = Visibility.Collapsed; tab_Weather.Visibility = Visibility.Collapsed; tab_Countdown.Visibility = Visibility.Collapsed; tab_Stopwatch.Visibility = Visibility.Collapsed; tab_Timer.Visibility = Visibility.Collapsed; AVAnimations.Ani_Visibility(tab_World, true, true, 0.25); tab_Settings.Visibility = Visibility.Collapsed; tab_Help.Visibility = Visibility.Collapsed; } else if (SelStackPanel.Name == "menuButtonSettings") { ////Reset settings scrollviewer location //if ((bool)vApplicationSettings["DevStatusMobile"]) //{ // sv_tab_Settings.ChangeView(0, null, null); // sv_tab_Settings.UpdateLayout(); //} //sv_tab_Settings_Right.ChangeView(null, 0, null); //sv_tab_Settings_Right.UpdateLayout(); tab_Tile.Visibility = Visibility.Collapsed; tab_Weather.Visibility = Visibility.Collapsed; tab_Countdown.Visibility = Visibility.Collapsed; tab_Stopwatch.Visibility = Visibility.Collapsed; tab_Timer.Visibility = Visibility.Collapsed; tab_World.Visibility = Visibility.Collapsed; AVAnimations.Ani_Visibility(tab_Settings, true, true, 0.25); tab_Help.Visibility = Visibility.Collapsed; } else if (SelStackPanel.Name == "menuButtonHelp") { HelpLoad(); tab_Tile.Visibility = Visibility.Collapsed; tab_Weather.Visibility = Visibility.Collapsed; tab_Countdown.Visibility = Visibility.Collapsed; tab_Stopwatch.Visibility = Visibility.Collapsed; tab_Timer.Visibility = Visibility.Collapsed; tab_World.Visibility = Visibility.Collapsed; tab_Settings.Visibility = Visibility.Collapsed; AVAnimations.Ani_Visibility(tab_Help, true, true, 0.25); } } } catch { } }
private async Task HideShowHeader(bool ForceClose) { try { Int32 HeaderTargetSize = Convert.ToInt32(stackpanel_Header.Tag); Int32 HeaderCurrentSize = Convert.ToInt32(stackpanel_Header.Height); if (ForceClose || HeaderCurrentSize == HeaderTargetSize) { AVAnimations.Ani_Height(stackpanel_Header, 0, false, 0.075); await HideShowMenu(true); if (!AVFunctions.DevMobile()) { iconMenu.Margin = new Thickness(0, 0, 16, 0); } image_iconMenu.Source = await AVImage.LoadBitmapImage("ms-appx:///Assets/iconMenu-Dark.png", false); image_iconMenu.Opacity = 0.60; grid_StatusApplication.Margin = new Thickness(0, 0, 0, 0); grid_StatusApplication.Background = new SolidColorBrush(Color.FromArgb(255, 88, 88, 88)) { Opacity = 0.60 }; border_StatusCurrentItem.Background = new SolidColorBrush(Color.FromArgb(255, 88, 88, 88)) { Opacity = 0.50 }; //Update the current item status text if (AppVariables.CurrentTotalItemsCount == 0) { textblock_StatusCurrentItem.Text = textblock_StatusCurrentItem.Tag.ToString(); } else { textblock_StatusCurrentItem.Text = textblock_StatusCurrentItem.Tag.ToString() + "/" + AppVariables.CurrentTotalItemsCount; } //Adjust the title bar color await AppAdjust.AdjustTitleBarColor(this.RequestedTheme, false, false); AppVariables.HeaderHidden = true; } else { AVAnimations.Ani_Height(stackpanel_Header, HeaderTargetSize, true, 0.075); iconMenu.Margin = new Thickness(0, 0, 0, 0); image_iconMenu.Source = await AVImage.LoadBitmapImage("ms-appx:///Assets/iconMenu.png", false); image_iconMenu.Opacity = 1; grid_StatusApplication.Margin = new Thickness(0, 65, 0, 0); grid_StatusApplication.Background = new SolidColorBrush((Color)Resources["SystemAccentColor"]) { Opacity = 0.60 }; border_StatusCurrentItem.Background = new SolidColorBrush((Color)Resources["SystemAccentColor"]) { Opacity = 0.50 }; //Update the current item status text textblock_StatusCurrentItem.Text = textblock_StatusCurrentItem.Tag.ToString(); //Adjust the title bar color await AppAdjust.AdjustTitleBarColor(this.RequestedTheme, true, false); AppVariables.HeaderHidden = false; } } catch { } }
//Handle application page startup async Task ApplicationStartup() { try { //Set Application Styles this.RequestedTheme = ElementTheme.Light; if (AVFunctions.DevMobile()) { //Set Phone StatusBar vStatusBar = StatusBar.GetForCurrentView(); vStatusBar.ForegroundColor = Colors.White; vStatusBar.BackgroundColor = Color.FromArgb(255, 29, 29, 29); vStatusBar.BackgroundOpacity = 1; await vStatusBar.ShowAsync(); //Set Application Display Orientation DisplayInformation.AutoRotationPreferences = DisplayOrientations.Portrait | DisplayOrientations.PortraitFlipped; //Enable or disable device specific user interface grid_TileLogo.Visibility = Visibility.Collapsed; grid_CountdownLogo.Visibility = Visibility.Collapsed; grid_StopwatchLogo.Visibility = Visibility.Collapsed; grid_TimerLogo.Visibility = Visibility.Collapsed; grid_WorldLogo.Visibility = Visibility.Collapsed; grid_SettingsLogo.Visibility = Visibility.Collapsed; grid_HelpLogo.Visibility = Visibility.Collapsed; //Set Application Menu Orientation - Vertical grid_Main.RowDefinitions.Add(new RowDefinition { Height = new GridLength(1, GridUnitType.Star) }); grid_Main.RowDefinitions.Add(new RowDefinition { Height = new GridLength(90, GridUnitType.Pixel) }); page_Menu.SetValue(Grid.RowProperty, 1); page_Main.SetValue(Grid.RowProperty, 0); lb_Menu.Style = (Style)App.Current.Resources["ListBoxHorizontal"]; //Storyboard - Show menu swipe hint animation AVAnimations.Ani_SwipeHintHorizontal(lb_Menu, -25); } else { ////Set Desktop TitleBar //vTitleBar = vApplicationView.TitleBar; //vTitleBar.ButtonBackgroundColor = Color.FromArgb(255, 29, 29, 29); //vTitleBar.BackgroundColor = Color.FromArgb(255, 29, 29, 29); //vTitleBar.ButtonForegroundColor = Colors.White; //vTitleBar.ForegroundColor = Colors.White; //Set Application Minimum Window Size vApplicationView.SetPreferredMinSize(new Size(1024, 768)); //Set Application Display Orientation DisplayInformation.AutoRotationPreferences = DisplayOrientations.Landscape | DisplayOrientations.LandscapeFlipped; //Enable or disable device specific user interface sv_tab_Tile.HorizontalScrollMode = ScrollMode.Disabled; sv_tab_Tile.HorizontalScrollBarVisibility = ScrollBarVisibility.Hidden; sv_tab_Settings.HorizontalScrollMode = ScrollMode.Disabled; sv_tab_Settings.HorizontalScrollBarVisibility = ScrollBarVisibility.Hidden; img_Settings_Back.Visibility = Visibility.Collapsed; img_Tile_Forward.Visibility = Visibility.Collapsed; img_Tile_Back.Visibility = Visibility.Collapsed; cb_SettingShowMoreTiles.Content = "Is option 'Start full screen' disabled?"; //Set Application Menu Orientation - Horizontal grid_Main.ColumnDefinitions.Add(new ColumnDefinition { Width = new GridLength(90, GridUnitType.Pixel) }); grid_Main.ColumnDefinitions.Add(new ColumnDefinition { Width = new GridLength(1, GridUnitType.Star) }); page_Menu.SetValue(Grid.ColumnProperty, 0); page_Main.SetValue(Grid.ColumnProperty, 1); lb_Menu.Style = (Style)App.Current.Resources["ListBoxVertical"]; //Storyboard - Show menu swipe hint animation AVAnimations.Ani_SwipeHintVertical(lb_Menu, -25); } //Load Application Settings await SettingsCheck(); await SettingsLoad(); await SettingsSave(); //Handle application navigation await ApplicationNavigation(); //Enable or disable build specific user interface if (AVFunctions.DevOsVersion() < 14393) { cb_SettingsNotiBatterySaver.Visibility = Visibility.Collapsed; txt_SettingsNotiBatterySaver.Visibility = Visibility.Collapsed; } //Register application events and timers ApplicationTimersRegister(); ApplicationEventsRegister(); //Check pinned live tiles PinnedTileStatusLoad(); //Load Application Background Task bool TaskRunning = await TaskAgentLoad(); //Enable the user interface grid_Main.Opacity = 1; grid_Main.IsHitTestVisible = true; //Check if live tile update is needed if (TaskRunning) { await CheckForBackgroundUpdate(); } //Register Cortana voice commands await RegisterCortanaCommands(); } catch { } }
//Update UpdateSleepingscreen async Task UpdateSleepingscreen() { try { //Set the screen time text DateTime DateTimeMin = DateTime.Now.AddSeconds(-DateTime.Now.Second); if ((bool)vApplicationSettings["SleepAnalogClock"]) { string ClockUri = "ms-appx:///Assets/Analog/" + ClockStyle + "/" + DateTimeMin.ToString("hmm") + ".png"; if (((BitmapImage)img_ClockAnalog.Source).UriSource.ToString() != ClockUri) { img_ClockAnalog.Source = new BitmapImage() { UriSource = new Uri(ClockUri, UriKind.Absolute) }; } } else { string HourText = String.Empty; string AmPmText = String.Empty; string MinuteText = DateTime.Now.ToString("mm"); if ((bool)vApplicationSettings["Display24hClock"]) { HourText = DateTimeMin.ToString("HH"); } else { HourText = DateTimeMin.ToString("%h"); } if ((bool)vApplicationSettings["DisplayAMPMClock"]) { if ((bool)vApplicationSettings["DisplayRegionLanguage"]) { AmPmText = DateTimeMin.ToString("tt", vCultureInfoReg); if (String.IsNullOrEmpty(AmPmText)) { AmPmText = DateTimeMin.ToString("tt", vCultureInfoEng); } } else { AmPmText = DateTimeMin.ToString("tt", vCultureInfoEng); } } if (TimeHour.Text != HourText) { AVAnimations.Ani_TextFadeInandOut(TimeHour, HourText); } if (TimeMinute.Text != MinuteText) { AVAnimations.Ani_TextFadeInandOut(TimeMinute, MinuteText); } if (TimeAmPm.Text != AmPmText) { AVAnimations.Ani_TextFadeInandOut(TimeAmPm, AmPmText); } } //Set the screen date text if ((bool)vApplicationSettings["SleepDate"]) { string DisplayDate = String.Empty; if ((bool)vApplicationSettings["DisplayRegionLanguage"]) { if ((bool)vApplicationSettings["Display24hClock"]) { DisplayDate = AVFunctions.ToTitleCase(DateTimeMin.ToString("dddd d MMMM", vCultureInfoReg)); } else { DisplayDate = AVFunctions.ToTitleCase(DateTimeMin.ToString("dddd MMMM d", vCultureInfoReg)); } } else { if ((bool)vApplicationSettings["Display24hClock"]) { DisplayDate = DateTimeMin.ToString("dddd d MMMM", vCultureInfoEng); } else { DisplayDate = DateTimeMin.ToString("dddd MMMM d", vCultureInfoEng); } } if (txt_SleepDate.Text != DisplayDate) { AVAnimations.Ani_TextFadeInandOut(txt_SleepDate, DisplayDate); } } else { txt_SleepDate.Visibility = Visibility.Collapsed; } //Check for active alarms and timers if (!(bool)vApplicationSettings["SleepAlarm"] || !ToastNotificationManager.CreateToastNotifier().GetScheduledToastNotifications().Any(x => x.DeliveryTime > DateTime.Now)) { img_AlarmClock.Visibility = Visibility.Collapsed; } //Check and set Weather information if ((bool)vApplicationSettings["BackgroundDownload"] && (bool)vApplicationSettings["DownloadWeather"] && (bool)vApplicationSettings["SleepWeather"]) { string WeatherCurrentIcon = vApplicationSettings["BgStatusWeatherCurrentIcon"].ToString(); string WeatherCurrentTemp = vApplicationSettings["BgStatusWeatherCurrentTemp"].ToString(); string WeatherIconUri = String.Empty; if (await AVFunctions.AppFileExists("Assets/" + WeatherIconStyle + "/" + WeatherCurrentIcon + ".png")) { WeatherIconUri = "ms-appx:///Assets/" + WeatherIconStyle + "/" + WeatherCurrentIcon + ".png"; } else { WeatherIconUri = "ms-appx:///Assets/" + WeatherIconStyle + "/0.png"; } if (((BitmapImage)img_WeatherIcon.Source).UriSource.ToString() != WeatherIconUri) { img_WeatherIcon.Source = new BitmapImage() { UriSource = new Uri(WeatherIconUri, UriKind.Absolute) }; } if (txt_WeatherIcon.Text != WeatherCurrentTemp) { AVAnimations.Ani_TextFadeInandOut(txt_WeatherIcon, WeatherCurrentTemp); } } else { img_WeatherIcon.Visibility = Visibility.Collapsed; txt_WeatherIcon.Visibility = Visibility.Collapsed; } //Load current battery level if ((bool)vApplicationSettings["SleepBattery"]) { //Check if there is battery status available if (PowerManager.BatteryStatus == BatteryStatus.NotPresent) { if (txt_BatteryLevel.Text != "N/A") { AVAnimations.Ani_TextFadeInandOut(txt_BatteryLevel, "N/A"); } } else { string BatteryLevel = PowerManager.RemainingChargePercent + "%"; if (txt_BatteryLevel.Text != BatteryLevel) { AVAnimations.Ani_TextFadeInandOut(txt_BatteryLevel, BatteryLevel); } } } else { img_BatteryLevel.Visibility = Visibility.Collapsed; txt_BatteryLevel.Visibility = Visibility.Collapsed; } } catch { txt_SleepDate.Text = "Failed to load sleeping screen"; } }