public bool PreFilterMessage(ref Message m) { if (m.Msg == 0x200) { return(false); } if (m.Msg == 0x102) { return(false); } if (m.Msg != 260) { if (m.Msg == 0x105) { return(true); } if (m.Msg == 0x106) { return(true); } if (m.Msg == 0x107) { return(true); } if (m.Msg == 0x101) { return(true); } if (m.Msg == 0x100) { return(true); } if (m.Msg == 0xa4) { return(true); } if (m.Msg == 6) { MyRenderProxy.HandleFocusMessage((m.WParam != IntPtr.Zero) ? MyWindowFocusMessage.Activate : MyWindowFocusMessage.Deactivate); } if (m.Msg == 7) { MyRenderProxy.HandleFocusMessage(MyWindowFocusMessage.SetFocus); } if (!this.BypassedMessages.Contains(m.Msg)) { return(false); } if (m.Msg == 6) { if (m.WParam == IntPtr.Zero) { this.OnDeactivate(EventArgs.Empty); } else { this.OnActivated(EventArgs.Empty); } } if (m.Msg == 0x200) { this.OnMouseMove(this.m_emptyMouseEventArgs); } m.Result = WinApi.DefWindowProc(m.HWnd, m.Msg, m.WParam, m.LParam); } return(true); }
public bool PreFilterMessage(ref Message m) { if (m.Msg == (int)WinApi.WM.MOUSEMOVE) { return(false); } if (m.Msg == (int)WinApi.WM.CHAR) { return(false); } if (m.Msg == (int)WinApi.WM.SYSKEYDOWN) { return(true); } if (m.Msg == (int)WinApi.WM.SYSKEYUP) { return(true); } if (m.Msg == (int)WinApi.WM.SYSCHAR) { return(true); } if (m.Msg == (int)WinApi.WM.SYSDEADCHAR) { return(true); } if (m.Msg == (int)WinApi.WM.KEYUP) { return(true); } if (m.Msg == (int)WinApi.WM.KEYDOWN) { return(true); } if (m.Msg == (int)WinApi.WM.SYSCOMMAND) { //http://msdn.microsoft.com/en-us/library/windows/desktop/ms646360(v=vs.85).aspx WinApi.SystemCommands correctWParam = (WinApi.SystemCommands)((int)m.WParam & 0xFFF0); if (correctWParam == WinApi.SystemCommands.SC_MOUSEMENU) { return(true); } } if (m.Msg == (int)WinApi.WM.NCRBUTTONDOWN) { return(true); } if (m.Msg == (int)WinApi.WM.ACTIVATE) { MyRenderProxy.HandleFocusMessage(MyWindowFocusMessage.Activate); } if (m.Msg == (int)WinApi.WM.SETFOCUS) { MyRenderProxy.HandleFocusMessage(MyWindowFocusMessage.SetFocus); } if (BypassedMessages.Contains(m.Msg)) { if (m.Msg == (int)WinApi.WM.ACTIVATE) { if (m.WParam == IntPtr.Zero) { OnDeactivate(EventArgs.Empty); } else { OnActivated(EventArgs.Empty); } } if (m.Msg == (int)WinApi.WM.MOUSEMOVE) { OnMouseMove(m_emptyMouseEventArgs); } m.Result = WinApi.DefWindowProc(m.HWnd, m.Msg, m.WParam, m.LParam); return(true); } return(false); }