Added some very basic support for Metro (Modern UI) Apps, the ones running can be captured over the "Capture window from list" and the one visible will be selectable with the interactive capture. (PrintScreen and space). What doesn't work is using printscreen on the Metro Tiles screen, here the space will only work like the desktop is visible.

git-svn-id: http://svn.code.sf.net/p/greenshot/code/trunk@2247 7dccd23d-a4a3-4e1f-8c07-b4c1b4018ab4
This commit is contained in:
RKrom 2012-11-08 07:00:29 +00:00
commit ae8c007528
2 changed files with 39 additions and 8 deletions

View file

@ -412,7 +412,9 @@ namespace Greenshot.Helpers {
Thread getWindowDetailsThread = new Thread (delegate() {
// Start Enumeration of "active" windows
foreach (WindowDetails window in WindowDetails.GetAllWindows()) {
List<WindowDetails> allWindows = WindowDetails.GetMetroApps();
allWindows.AddRange(WindowDetails.GetAllWindows());
foreach (WindowDetails window in allWindows) {
// Window should be visible and not ourselves
if (!window.Visible) {
continue;
@ -456,9 +458,9 @@ namespace Greenshot.Helpers {
// AddCaptureElementsForWindow(windowCaptureElement, window, goLevelDeep);
//}
}
lock (windows) {
windows = WindowDetails.SortByZOrder(IntPtr.Zero, windows);
}
// lock (windows) {
// windows = WindowDetails.SortByZOrder(IntPtr.Zero, windows);
// }
});
getWindowDetailsThread.Name = "Retrieve window details";
getWindowDetailsThread.IsBackground = true;