public override void ShowGlobalProgressBarIndeterminate () { if (!TaskbarManager.IsPlatformSupported) return; IntPtr handle = GdkWin32.HgdiobjGet (IdeApp.Workbench.RootWindow.GdkWindow); TaskbarManager.Instance.SetProgressState (TaskbarProgressBarState.Indeterminate, handle); }
internal override void SetMainWindowDecorations(Gtk.Window window) { // Only initialize elements for Win7+. if (TaskbarManager.IsPlatformSupported) { TaskbarManager.Instance.SetApplicationIdForSpecificWindow(GdkWin32.HgdiobjGet(window.GdkWindow), BrandingService.ApplicationName); } }
public override bool GetIsFullscreen(Components.Window window) { WINDOWPLACEMENT lpwndpl = new WINDOWPLACEMENT(); lpwndpl.length = Marshal.SizeOf(lpwndpl); Gtk.Window controlWindow = window; IntPtr handle = GdkWin32.HgdiobjGet(controlWindow.GdkWindow); Win32.GetWindowPlacement(handle, ref lpwndpl); return(lpwndpl.showCmd == Win32.SW_SHOWMAXIMIZED); }
public override void ShowGlobalProgressBarError() { if (!TaskbarManager.IsPlatformSupported) { return; } IntPtr handle = GdkWin32.HgdiobjGet(IdeApp.Workbench.RootWindow.GdkWindow); TaskbarManager.Instance.SetProgressState(TaskbarProgressBarState.Error, handle); TaskbarManager.Instance.SetProgressValue(1, 1, handle); }
public override void SetGlobalProgressBar (double progress) { if (!TaskbarManager.IsPlatformSupported) return; IntPtr handle = GdkWin32.HgdiobjGet (IdeApp.Workbench.RootWindow.GdkWindow); if (progress >= 1.0) { TaskbarManager.Instance.SetProgressState (TaskbarProgressBarState.NoProgress, handle); } else { TaskbarManager.Instance.SetProgressState (TaskbarProgressBarState.Normal, handle); TaskbarManager.Instance.SetProgressValue ((int)(progress * 100f), 100, handle); } }
internal override void SetMainWindowDecorations(Gtk.Window window) { Uri uri = new Uri("pack://application:,,,/WindowsPlatform;component/Styles.xaml"); Application.Current.Resources.MergedDictionaries.Add(new ResourceDictionary() { Source = uri }); // Only initialize elements for Win7+. if (TaskbarManager.IsPlatformSupported) { TaskbarManager.Instance.SetApplicationIdForSpecificWindow(GdkWin32.HgdiobjGet(window.GdkWindow), BrandingService.ApplicationName); } }
public override void ShowGlobalProgressBarError () { if (!TaskbarManager.IsPlatformSupported) return; IntPtr handle = GdkWin32.HgdiobjGet (IdeApp.Workbench.RootWindow.GdkWindow); TaskbarManager.Instance.SetProgressState (TaskbarProgressBarState.Error, handle); TaskbarManager.Instance.SetProgressValue (1, 1, handle); // Added a timeout to removing the red progress bar. This is to fix the dependency on a status bar update // that won't happen until the status bar receives another update. GLib.Timeout.Add (500, delegate { TaskbarManager.Instance.SetProgressState (TaskbarProgressBarState.NoProgress, handle); return false; }); }
private void UpdateJumpList() { Taskbar.JumpList jumplist = Taskbar.JumpList.CreateJumpListForIndividualWindow( MonoDevelop.Core.BrandingService.ApplicationName, GdkWin32.HgdiobjGet(MessageService.RootWindow.GdkWindow) ); jumplist.KnownCategoryToDisplay = Taskbar.JumpListKnownCategoryType.Neither; Taskbar.JumpListCustomCategory recentProjectsCategory = new Taskbar.JumpListCustomCategory("Recent Solutions"); Taskbar.JumpListCustomCategory recentFilesCategory = new Taskbar.JumpListCustomCategory("Recent Files"); jumplist.AddCustomCategories(recentProjectsCategory, recentFilesCategory); jumplist.KnownCategoryOrdinalPosition = 0; foreach (RecentFile recentProject in recentFiles.GetProjects()) { // Windows is picky about files that are added to the jumplist. Only files that MonoDevelop // has been registered as supported in the registry can be added. bool isSupportedFileExtension = this.supportedExtensions.Contains(Path.GetExtension(recentProject.FileName)); if (isSupportedFileExtension) { recentProjectsCategory.AddJumpListItems(new Taskbar.JumpListLink(exePath, recentProject.DisplayName) { Arguments = MonoDevelop.Core.Execution.ProcessArgumentBuilder.Quote(recentProject.FileName), IconReference = new Microsoft.WindowsAPICodePack.Shell.IconReference(exePath, 0), }); } } foreach (RecentFile recentFile in recentFiles.GetFiles()) { if (this.supportedExtensions.Contains(Path.GetExtension(recentFile.FileName))) { recentFilesCategory.AddJumpListItems(new Taskbar.JumpListLink(exePath, recentFile.DisplayName) { Arguments = MonoDevelop.Core.Execution.ProcessArgumentBuilder.Quote(recentFile.FileName), IconReference = new Microsoft.WindowsAPICodePack.Shell.IconReference(exePath, 0), }); } } jumplist.Refresh(); }
public GtkWin32Proxy(Gtk.Window gtkWindow) { Handle = GdkWin32.HgdiobjGet(gtkWindow.RootWindow); }