mirror of
https://github.com/Hofknecht/SystemTrayMenu.git
synced 2024-09-28 23:31:25 +12:00
parent
01b8fbe4dc
commit
2b9822c24b
9 changed files with 63 additions and 17 deletions
|
@ -842,7 +842,9 @@ namespace SystemTrayMenu.Controls
|
|||
private void TabPanelDetails_SelectedIndexChanged(object sender, EventArgs e)
|
||||
{
|
||||
if (TabPanelDetails.SelectedTab == TabPageAssemblyDetails)
|
||||
{
|
||||
AssemblyNamesComboBox.Focus();
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -43,7 +43,7 @@ namespace SystemTrayMenu
|
|||
|
||||
public int Level = 0;
|
||||
FadeForm FadeForm = null;
|
||||
bool autoResizeRowsDone = false;
|
||||
bool autoResizeRowsDone = false;
|
||||
|
||||
public enum MenuType { Default, DisposedFake };
|
||||
|
||||
|
@ -355,7 +355,11 @@ namespace SystemTrayMenu
|
|||
get { return _text; }
|
||||
set
|
||||
{
|
||||
if (value == null) value = "";
|
||||
if (value == null)
|
||||
{
|
||||
value = "";
|
||||
}
|
||||
|
||||
if (_text != value)
|
||||
{
|
||||
_text = value;
|
||||
|
|
|
@ -397,7 +397,7 @@ namespace SystemTrayMenu.Controls
|
|||
{
|
||||
IsLoading = false;
|
||||
OpenMenu?.Invoke(this, null);
|
||||
}
|
||||
}
|
||||
|
||||
public void Dispose()
|
||||
{
|
||||
|
|
|
@ -37,7 +37,7 @@ namespace SystemTrayMenu.Handler
|
|||
KeySearchString = string.Empty;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public void Dispose()
|
||||
{
|
||||
hook.Dispose();
|
||||
|
@ -168,7 +168,9 @@ namespace SystemTrayMenu.Handler
|
|||
{
|
||||
// Is current selection is still valid for this search then skip selecting different item
|
||||
if (textselected.ToLower().StartsWith(keyInput.ToLower()))
|
||||
{
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
dgvBefore = dgv;
|
||||
|
|
|
@ -98,7 +98,10 @@ namespace SystemTrayMenu.Helper
|
|||
//MH: Removed, otherwise wrong icon
|
||||
// | Shell32.SHGFI_USEFILEATTRIBUTES ;
|
||||
|
||||
if (true == linkOverlay) flags += Shell32.SHGFI_LINKOVERLAY;
|
||||
if (true == linkOverlay)
|
||||
{
|
||||
flags += Shell32.SHGFI_LINKOVERLAY;
|
||||
}
|
||||
|
||||
/* Check the size specified for return. */
|
||||
if (IconSize.Small == size)
|
||||
|
@ -139,7 +142,11 @@ namespace SystemTrayMenu.Helper
|
|||
}
|
||||
|
||||
// Cleanup
|
||||
if (!linkOverlay) User32.DestroyIcon(hIcon);
|
||||
if (!linkOverlay)
|
||||
{
|
||||
User32.DestroyIcon(hIcon);
|
||||
}
|
||||
|
||||
User32.DestroyIcon(shfi.hIcon);
|
||||
}
|
||||
|
||||
|
@ -158,7 +165,10 @@ namespace SystemTrayMenu.Helper
|
|||
//MH: Removed SHGFI_USEFILEATTRIBUTES, otherwise was wrong folder icon
|
||||
uint flags = Shell32.SHGFI_ICON; // | Shell32.SHGFI_USEFILEATTRIBUTES;
|
||||
|
||||
if (true == linkOverlay) flags += Shell32.SHGFI_LINKOVERLAY;
|
||||
if (true == linkOverlay)
|
||||
{
|
||||
flags += Shell32.SHGFI_LINKOVERLAY;
|
||||
}
|
||||
|
||||
if (FolderType.Open == folderType)
|
||||
{
|
||||
|
@ -306,7 +316,7 @@ namespace SystemTrayMenu.Helper
|
|||
public const int ILD_TRANSPARENT = 0x00000001;
|
||||
|
||||
[DllImport("Shell32.dll", CharSet = CharSet.Unicode)]
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessage("Interoperability",
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessage("Interoperability",
|
||||
"CA1401:P/Invokes should not be visible", Justification = "<Pending>")]
|
||||
public static extern IntPtr SHGetFileInfo(
|
||||
string pszPath,
|
||||
|
@ -335,7 +345,7 @@ namespace SystemTrayMenu.Helper
|
|||
/// <param name="hIcon">Pointer to icon handle.</param>
|
||||
/// <returns>N/A</returns>
|
||||
[DllImport("User32.dll")]
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessage("Interoperability",
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessage("Interoperability",
|
||||
"CA1401:P/Invokes should not be visible", Justification = "<Pending>")]
|
||||
public static extern int DestroyIcon(IntPtr hIcon);
|
||||
}
|
||||
|
|
|
@ -43,7 +43,9 @@ namespace SystemTrayMenu.Helper
|
|||
|
||||
// invoke the event to notify the parent.
|
||||
if (KeyPressed != null)
|
||||
{
|
||||
KeyPressed(this, new KeyPressedEventArgs(modifier, key));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -68,7 +70,9 @@ namespace SystemTrayMenu.Helper
|
|||
_window.KeyPressed += delegate (object sender, KeyPressedEventArgs args)
|
||||
{
|
||||
if (KeyPressed != null)
|
||||
{
|
||||
KeyPressed(this, args);
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
|
@ -84,7 +88,9 @@ namespace SystemTrayMenu.Helper
|
|||
|
||||
// register the hot key.
|
||||
if (!RegisterHotKey(_window.Handle, _currentId, (uint)modifier, (uint)key))
|
||||
{
|
||||
throw new InvalidOperationException("Couldn’t register the hot key.");
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
|
|
@ -111,7 +111,9 @@ namespace SystemTrayMenu.Helper
|
|||
string info = string.Empty;
|
||||
|
||||
if (ShellHelper.LoWord(m.WParam) == (int)CMD_CUSTOM.ExpandCollapse)
|
||||
{
|
||||
info = "Expands or collapses the current selected item";
|
||||
}
|
||||
else
|
||||
{
|
||||
info = "";/* ContextMenuHelper.GetCommandString(
|
||||
|
@ -134,7 +136,9 @@ namespace SystemTrayMenu.Helper
|
|||
{
|
||||
if (_oContextMenu2.HandleMenuMsg(
|
||||
(uint)m.Msg, m.WParam, m.LParam) == S_OK)
|
||||
{
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
@ -146,7 +150,9 @@ namespace SystemTrayMenu.Helper
|
|||
{
|
||||
if (_oContextMenu3.HandleMenuMsg2(
|
||||
(uint)m.Msg, m.WParam, m.LParam, IntPtr.Zero) == S_OK)
|
||||
{
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
@ -555,13 +561,19 @@ namespace SystemTrayMenu.Helper
|
|||
}
|
||||
|
||||
if (iContextMenuPtr != IntPtr.Zero)
|
||||
{
|
||||
Marshal.Release(iContextMenuPtr);
|
||||
}
|
||||
|
||||
if (iContextMenuPtr2 != IntPtr.Zero)
|
||||
{
|
||||
Marshal.Release(iContextMenuPtr2);
|
||||
}
|
||||
|
||||
if (iContextMenuPtr3 != IntPtr.Zero)
|
||||
{
|
||||
Marshal.Release(iContextMenuPtr3);
|
||||
}
|
||||
|
||||
ReleaseAll();
|
||||
}
|
||||
|
@ -1516,7 +1528,9 @@ namespace SystemTrayMenu.Helper
|
|||
protected void OnHookInvoked(HookEventArgs e)
|
||||
{
|
||||
if (HookInvoked != null)
|
||||
{
|
||||
HookInvoked(this, e);
|
||||
}
|
||||
}
|
||||
// ************************************************************************
|
||||
|
||||
|
@ -1539,7 +1553,9 @@ namespace SystemTrayMenu.Helper
|
|||
protected int CoreHookProc(int code, IntPtr wParam, IntPtr lParam)
|
||||
{
|
||||
if (code < 0)
|
||||
{
|
||||
return CallNextHookEx(m_hhook, code, wParam, lParam);
|
||||
}
|
||||
|
||||
// Let clients determine what to do
|
||||
HookEventArgs e = new HookEventArgs();
|
||||
|
@ -1617,9 +1633,13 @@ namespace SystemTrayMenu.Helper
|
|||
{
|
||||
uint param32 = (uint)(ptr.ToInt64() | 0xffffffffL);
|
||||
if ((param32 & 0x80000000) == 0x80000000)
|
||||
{
|
||||
return (param32 >> 16);
|
||||
}
|
||||
else
|
||||
{
|
||||
return (param32 >> 16) & 0xffff;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
|
|
@ -46,7 +46,7 @@ namespace SystemTrayMenu
|
|||
{
|
||||
Log.Close();
|
||||
}
|
||||
|
||||
|
||||
void AskUserSendError(Exception ex)
|
||||
{
|
||||
Log.Error("Application Crashed", ex);
|
||||
|
|
|
@ -49,7 +49,7 @@ namespace SystemTrayMenu
|
|||
keyboardInput.Cleared += FadeHalfOrOutIfNeeded;
|
||||
|
||||
menuNotifyIcon = new MenuNotifyIcon();
|
||||
menuNotifyIcon.Exit += Application.Exit;
|
||||
menuNotifyIcon.Exit += Application.Exit;
|
||||
menuNotifyIcon.Restart += AppRestart.ByMenuNotifyIcon;
|
||||
menuNotifyIcon.HandleClick += SwitchOpenClose;
|
||||
void SwitchOpenClose()
|
||||
|
@ -158,7 +158,7 @@ namespace SystemTrayMenu
|
|||
keyboardInput.InUse = false;
|
||||
if (dgvFromLastMouseEvent != null)
|
||||
{
|
||||
Dgv_MouseEnter(dgvFromLastMouseEvent,
|
||||
Dgv_MouseEnter(dgvFromLastMouseEvent,
|
||||
cellEventArgsFromLastMouseEvent);
|
||||
}
|
||||
}
|
||||
|
@ -192,7 +192,7 @@ namespace SystemTrayMenu
|
|||
if (menus[0].Visible &&
|
||||
isMouseOnAnyMenu)
|
||||
{
|
||||
if (isAnyMenuActive &&
|
||||
if (isAnyMenuActive &&
|
||||
!(openCloseState == OpenCloseState.Closing))
|
||||
{
|
||||
if (!keyboardInput.InUse)
|
||||
|
@ -252,13 +252,13 @@ namespace SystemTrayMenu
|
|||
int widthPredecessors = -1; // -1 padding
|
||||
bool directionToRight = false;
|
||||
|
||||
foreach (Menu menu in Menus().Where(m=>m.Level > 0))
|
||||
foreach (Menu menu in Menus().Where(m => m.Level > 0))
|
||||
{
|
||||
int newWith = (menu.Width -
|
||||
int newWith = (menu.Width -
|
||||
menu.Padding.Horizontal + menuPredecessor.Width);
|
||||
if (directionToRight)
|
||||
{
|
||||
if (widthPredecessors - menu.Width <=
|
||||
if (widthPredecessors - menu.Width <=
|
||||
-menu.Padding.Horizontal)
|
||||
{
|
||||
directionToRight = false;
|
||||
|
@ -430,7 +430,9 @@ namespace SystemTrayMenu
|
|||
if (!worker.CancellationPending)
|
||||
{
|
||||
if (menuData.Validity == MenuDataValidity.Invalid)
|
||||
{
|
||||
menuData.Validity = MenuDataValidity.Valid;
|
||||
}
|
||||
}
|
||||
|
||||
return menuData;
|
||||
|
@ -667,7 +669,7 @@ namespace SystemTrayMenu
|
|||
dgv.SelectionChanged += Dgv_SelectionChanged;
|
||||
menu.KeyPress += keyboardInput.KeyPress;
|
||||
menu.CmdKeyProcessed += keyboardInput.CmdKeyProcessed;
|
||||
menu.Activated += Activated;
|
||||
menu.Activated += Activated;
|
||||
void Activated(object sender, EventArgs e)
|
||||
{
|
||||
menus[0].SetTitleColorActive();
|
||||
|
|
Loading…
Reference in a new issue