From 9b57eaeea0d3a5e9aaab2c546aff76ee45180c9a Mon Sep 17 00:00:00 2001 From: Johannes Anderwald Date: Sun, 26 Aug 2007 22:43:51 +0000 Subject: [PATCH] - dont show the same resolution multiple times - sort the resolution according to width, height and bits per pixel See issue #2594 for more details. svn path=/trunk/; revision=28585 --- reactos/dll/cpl/desk/settings.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/reactos/dll/cpl/desk/settings.c b/reactos/dll/cpl/desk/settings.c index cc1cdefb784..f27c8efb5d2 100644 --- a/reactos/dll/cpl/desk/settings.c +++ b/reactos/dll/cpl/desk/settings.c @@ -137,11 +137,11 @@ GetPossibleSettings(IN LPTSTR DeviceName, OUT DWORD* pSettingsCount, OUT PSETTIN Current->dmPelsHeight = devmode.dmPelsHeight; Current->dmBitsPerPel = devmode.dmBitsPerPel; while (Next != NULL && ( - Next->dmPelsHeight < Current->dmPelsHeight || - (Next->dmPelsHeight == Current->dmPelsHeight && Next->dmBitsPerPel < Current->dmBitsPerPel) || + Next->dmPelsWidth < Current->dmPelsWidth || + (Next->dmPelsWidth == Current->dmPelsWidth && Next->dmPelsHeight < Current->dmPelsHeight) || (Next->dmPelsHeight == Current->dmPelsHeight && - Next->dmBitsPerPel == Current->dmBitsPerPel && - Next->dmPelsWidth < Current->dmPelsWidth))) + Next->dmPelsWidth == Current->dmPelsWidth && + Next->dmBitsPerPel < Current->dmBitsPerPel ))) { Previous = Next; Next = Next->Flink; @@ -194,7 +194,7 @@ AddDisplayDevice(IN PGLOBAL_DATA pGlobalData, IN LPTSTR Description, IN LPTSTR D for (Current = newEntry->Settings; Current != NULL; Current = Current->Flink) { if (Current->Flink != NULL && - ((Current->dmPelsWidth != Current->Flink->dmPelsWidth) || + ((Current->dmPelsWidth != Current->Flink->dmPelsWidth) && (Current->dmPelsHeight != Current->Flink->dmPelsHeight))) { ResolutionsCount++; @@ -211,7 +211,7 @@ AddDisplayDevice(IN PGLOBAL_DATA pGlobalData, IN LPTSTR Description, IN LPTSTR D { if (Current->Flink == NULL || (Current->Flink != NULL && - ((Current->dmPelsWidth != Current->Flink->dmPelsWidth) || + ((Current->dmPelsWidth != Current->Flink->dmPelsWidth) && (Current->dmPelsHeight != Current->Flink->dmPelsHeight)))) { newEntry->Resolutions[i].dmPelsWidth = Current->dmPelsWidth;