mirror of
https://github.com/notepad-plus-plus/notepad-plus-plus.git
synced 2025-07-22 13:24:42 +02:00
[BUG_FIXED] Fix systemtray close crash bug.
[CHANGE_BEHAVIOUR] Change systemtray feature behaviour. git-svn-id: svn://svn.tuxfamily.org/svnroot/notepadplus/repository/trunk@560 f5eea248-9336-0410-98b8-ebc06183d4e3
This commit is contained in:
parent
1e41a66293
commit
bdbb2711e1
@ -393,7 +393,7 @@ void Notepad_plus::destroy()
|
|||||||
bool Notepad_plus::saveGUIParams()
|
bool Notepad_plus::saveGUIParams()
|
||||||
{
|
{
|
||||||
NppGUI & nppGUI = (NppGUI &)(NppParameters::getInstance())->getNppGUI();
|
NppGUI & nppGUI = (NppGUI &)(NppParameters::getInstance())->getNppGUI();
|
||||||
nppGUI._statusBarShow = _statusBar.isVisible();
|
//nppGUI._statusBarShow = _statusBar.isVisible();
|
||||||
nppGUI._toolbarShow = _rebarTop.getIDVisible(REBAR_BAR_TOOLBAR);
|
nppGUI._toolbarShow = _rebarTop.getIDVisible(REBAR_BAR_TOOLBAR);
|
||||||
nppGUI._toolBarStatus = _toolBar.getState();
|
nppGUI._toolBarStatus = _toolBar.getState();
|
||||||
|
|
||||||
@ -9204,10 +9204,14 @@ LRESULT Notepad_plus::runProc(HWND hwnd, UINT Message, WPARAM wParam, LPARAM lPa
|
|||||||
case WM_QUERYENDSESSION:
|
case WM_QUERYENDSESSION:
|
||||||
case WM_CLOSE:
|
case WM_CLOSE:
|
||||||
{
|
{
|
||||||
if (!_isPrelaunch)
|
if (_isPrelaunch)
|
||||||
{
|
{
|
||||||
_pTrayIco->doTrayIcon(REMOVE);
|
SendMessage(_hSelf, WM_SYSCOMMAND, SC_MINIMIZE, 0);
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
if (_pTrayIco)
|
||||||
|
_pTrayIco->doTrayIcon(REMOVE);
|
||||||
|
|
||||||
const NppGUI & nppgui = pNppParam->getNppGUI();
|
const NppGUI & nppgui = pNppParam->getNppGUI();
|
||||||
Session currentSession;
|
Session currentSession;
|
||||||
@ -9256,18 +9260,9 @@ LRESULT Notepad_plus::runProc(HWND hwnd, UINT Message, WPARAM wParam, LPARAM lPa
|
|||||||
if (nppgui._rememberLastSession && _rememberThisSession)
|
if (nppgui._rememberLastSession && _rememberThisSession)
|
||||||
saveSession(currentSession);
|
saveSession(currentSession);
|
||||||
|
|
||||||
|
|
||||||
if (!_isPrelaunch)
|
|
||||||
{
|
|
||||||
//Sends WM_DESTROY, Notepad++ will end
|
//Sends WM_DESTROY, Notepad++ will end
|
||||||
::DestroyWindow(hwnd);
|
::DestroyWindow(hwnd);
|
||||||
}
|
}
|
||||||
else
|
|
||||||
{
|
|
||||||
SendMessage(_hSelf, WM_SYSCOMMAND, SC_MINIMIZE, 0);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -9282,7 +9277,7 @@ LRESULT Notepad_plus::runProc(HWND hwnd, UINT Message, WPARAM wParam, LPARAM lPa
|
|||||||
case WM_SYSCOMMAND:
|
case WM_SYSCOMMAND:
|
||||||
{
|
{
|
||||||
NppGUI & nppgui = (NppGUI &)(pNppParam->getNppGUI());
|
NppGUI & nppgui = (NppGUI &)(pNppParam->getNppGUI());
|
||||||
if ((nppgui._isMinimizedToTray) && (wParam == SC_MINIMIZE))
|
if ((nppgui._isMinimizedToTray || _isPrelaunch) && (wParam == SC_MINIMIZE))
|
||||||
{
|
{
|
||||||
if (!_pTrayIco)
|
if (!_pTrayIco)
|
||||||
_pTrayIco = new trayIconControler(_hSelf, IDI_M30ICON, IDC_MINIMIZED_TRAY, ::LoadIcon(_hInst, MAKEINTRESOURCE(IDI_M30ICON)), TEXT(""));
|
_pTrayIco = new trayIconControler(_hSelf, IDI_M30ICON, IDC_MINIMIZED_TRAY, ::LoadIcon(_hInst, MAKEINTRESOURCE(IDI_M30ICON)), TEXT(""));
|
||||||
|
@ -164,6 +164,7 @@ notepad++ [--help] [-multiInst] [-noPlugins] [-lLanguage] [-nLineNumber] [-cColu
|
|||||||
-systemtray : Launch Notepad++ directly in system tray\r\
|
-systemtray : Launch Notepad++ directly in system tray\r\
|
||||||
fullFilePathName : file name to open (absolute or relative path name)\r\
|
fullFilePathName : file name to open (absolute or relative path name)\r\
|
||||||
");
|
");
|
||||||
|
|
||||||
void doException(Notepad_plus & notepad_plus_plus);
|
void doException(Notepad_plus & notepad_plus_plus);
|
||||||
|
|
||||||
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE, LPSTR, int)
|
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE, LPSTR, int)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user