From 4419abce1878de67752d23b4cd60b86ef5815534 Mon Sep 17 00:00:00 2001 From: Rainer Kottenhoff Date: Thu, 7 Mar 2019 00:41:23 +0100 Subject: [PATCH] + fix: redundant sticky window position flag --- src/Notepad3.c | 69 +++++++++++++++++++++++++++----------------------- src/TypeDefs.h | 1 - 2 files changed, 37 insertions(+), 33 deletions(-) diff --git a/src/Notepad3.c b/src/Notepad3.c index 434bcac5d..28f231ca7 100644 --- a/src/Notepad3.c +++ b/src/Notepad3.c @@ -461,7 +461,6 @@ static void _InitGlobals() DefaultFlags.bStickyWindowPosition = false; DefaultFlags.bReuseWindow = false; DefaultFlags.bSingleFileInstance = true; - DefaultFlags.fStickyWindowPosition = 0; Flags.fStickyWindowPosition = 0; DefaultFlags.fReuseWindow = 0; Flags.fReuseWindow = 0; DefaultFlags.fNoReuseWindow = 0; Flags.fNoReuseWindow = 0; DefaultFlags.fSingleFileInstance = 1; Flags.fSingleFileInstance = 1; @@ -5032,42 +5031,49 @@ LRESULT MsgCommand(HWND hwnd, UINT umsg, WPARAM wParam, LPARAM lParam) case IDM_VIEW_STICKYWINPOS: - - if (!Flags.bStickyWindowPosition) { - WCHAR tchPosX[32], tchPosY[32], tchSizeX[32], tchSizeY[32], tchMaximized[32], tchZoom[32]; + Flags.bStickyWindowPosition = !Flags.bStickyWindowPosition; // toggle int ResX, ResY; GetCurrentMonitorResolution(hwnd, &ResX, &ResY); - StringCchPrintf(tchPosX,COUNTOF(tchPosX),L"%ix%i PosX",ResX,ResY); - StringCchPrintf(tchPosY,COUNTOF(tchPosY),L"%ix%i PosY",ResX,ResY); - StringCchPrintf(tchSizeX,COUNTOF(tchSizeX),L"%ix%i SizeX",ResX,ResY); - StringCchPrintf(tchSizeY,COUNTOF(tchSizeY),L"%ix%i SizeY",ResX,ResY); - StringCchPrintf(tchMaximized,COUNTOF(tchMaximized),L"%ix%i Maximized",ResX,ResY); + WCHAR tchPosX[32], tchPosY[32], tchSizeX[32], tchSizeY[32], tchMaximized[32], tchZoom[32]; + + StringCchPrintf(tchPosX, COUNTOF(tchPosX), L"%ix%i PosX", ResX, ResY); + StringCchPrintf(tchPosY, COUNTOF(tchPosY), L"%ix%i PosY", ResX, ResY); + StringCchPrintf(tchSizeX, COUNTOF(tchSizeX), L"%ix%i SizeX", ResX, ResY); + StringCchPrintf(tchSizeY, COUNTOF(tchSizeY), L"%ix%i SizeY", ResX, ResY); + StringCchPrintf(tchMaximized, COUNTOF(tchMaximized), L"%ix%i Maximized", ResX, ResY); StringCchPrintf(tchZoom, COUNTOF(tchZoom), L"%ix%i Zoom", ResX, ResY); - // GetWindowPlacement - WININFO wi = GetMyWindowPlacement(Globals.hwndMain,NULL); - IniSetInt(L"Window",tchPosX,wi.x); - IniSetInt(L"Window",tchPosY,wi.y); - IniSetInt(L"Window",tchSizeX,wi.cx); - IniSetInt(L"Window",tchSizeY,wi.cy); - IniSetBool(L"Window",tchMaximized,wi.max); - IniSetInt(L"Window", tchZoom, wi.zoom); + if (Flags.bStickyWindowPosition) + { + // GetWindowPlacement + WININFO wi = GetMyWindowPlacement(Globals.hwndMain, NULL); + IniSetInt(L"Window", tchPosX, wi.x); + IniSetInt(L"Window", tchPosY, wi.y); + IniSetInt(L"Window", tchSizeX, wi.cx); + IniSetInt(L"Window", tchSizeY, wi.cy); + IniSetBool(L"Window", tchMaximized, wi.max); + IniSetInt(L"Window", tchZoom, wi.zoom); - Flags.bStickyWindowPosition = true; - InfoBoxLng(0,L"MsgStickyWinPos",IDS_MUI_STICKYWINPOS); - } - else { - Flags.bStickyWindowPosition = false; - } - - if (Flags.bStickyWindowPosition != DefaultFlags.bStickyWindowPosition) - IniSetBool(L"Settings2", L"StickyWindowPosition", Flags.bStickyWindowPosition); - else - IniSetString(L"Settings2", L"StickyWindowPosition", NULL); + InfoBoxLng(0, L"MsgStickyWinPos", IDS_MUI_STICKYWINPOS); + } + else { // clear entries + IniSetString(L"Window", tchPosX, NULL); + IniSetString(L"Window", tchPosY, NULL); + IniSetString(L"Window", tchSizeX, NULL); + IniSetString(L"Window", tchSizeY, NULL); + IniSetString(L"Window", tchMaximized, NULL); + IniSetString(L"Window", tchZoom, NULL); + } + + if (Flags.bStickyWindowPosition != DefaultFlags.bStickyWindowPosition) + IniSetBool(L"Settings2", L"StickyWindowPosition", Flags.bStickyWindowPosition); + else + IniSetString(L"Settings2", L"StickyWindowPosition", NULL); + } break; @@ -7476,9 +7482,8 @@ void SaveSettings(bool bSaveSettingsNow) FreeMem(pIniSection); } - - // Scintilla Styles - Style_Save(); + + Style_Save(); // Scintilla Styles int ResX, ResY; GetCurrentMonitorResolution(Globals.hwndMain, &ResX, &ResY); @@ -7487,7 +7492,7 @@ void SaveSettings(bool bSaveSettingsNow) StringCchPrintf(tchHighDpiToolBar,COUNTOF(tchHighDpiToolBar),L"%ix%i HighDpiToolBar", ResX, ResY); IniSetInt(L"Window", tchHighDpiToolBar, s_iToolBarTheme); - if (Flags.fStickyWindowPosition == 0) { + if (!Flags.bStickyWindowPosition) { WCHAR tchPosX[32], tchPosY[32], tchSizeX[32], tchSizeY[32], tchMaximized[32], tchZoom[32]; diff --git a/src/TypeDefs.h b/src/TypeDefs.h index ba8daa74a..956800201 100644 --- a/src/TypeDefs.h +++ b/src/TypeDefs.h @@ -423,7 +423,6 @@ typedef struct _flags_t bool bStickyWindowPosition; bool bReuseWindow; bool bSingleFileInstance; - int fStickyWindowPosition; int fReuseWindow; int fSingleFileInstance; int fNoReuseWindow;