CaptureMouse();
}
else {
- ReleaseMouse();
+ if (HasCapture()) ReleaseMouse();
}
return retval;
}
SelectionText st;
CopySelectionRange(&st);
wxTheClipboard->Open();
+ wxTheClipboard->UsePrimarySelection();
wxString text = stc2wx(st.s, st.len);
wxTheClipboard->SetData(new wxTextDataObject(text));
wxTheClipboard->Close();
bool gotData;
wxTheClipboard->Open();
+ wxTheClipboard->UsePrimarySelection();
gotData = wxTheClipboard->GetData(data);
wxTheClipboard->Close();
if (gotData) {
bool canPaste;
wxTheClipboard->Open();
+ wxTheClipboard->UsePrimarySelection();
canPaste = wxTheClipboard->IsSupported(wxUSE_UNICODE ? wxDF_UNICODETEXT : wxDF_TEXT);
wxTheClipboard->Close();
}
int ScintillaWX::DoKeyDown(int key, bool shift, bool ctrl, bool alt, bool* consumed) {
-#ifdef __WXGTK__
+#if defined(__WXGTK__) || defined(__WXMAC__)
// Ctrl chars (A-Z) end up with the wrong keycode on wxGTK...
if (ctrl && key >= 1 && key <= 26)
key += 'A' - 1;