Index: lib/Padre/Wx/Editor.pm
===================================================================
--- lib/Padre/Wx/Editor.pm	(revision 9942)
+++ lib/Padre/Wx/Editor.pm	(working copy)
@@ -869,11 +869,13 @@
 	my $text = $self->GetSelectedText;
 	if ( Padre::Constant::WXGTK and defined $text and $text ne '' ) {
 
-		# Only on X11 based platforms
-		#		Wx::wxTheClipboard->UsePrimarySelection(1);
-		$self->put_text_to_clipboard($text);
-
-		#		Wx::wxTheClipboard->UsePrimarySelection(0);
+            # Only on X11 based platforms
+            #Wx::wxTheClipboard->Open;
+            #Wx::wxTheClipboard->UsePrimarySelection(1);
+            
+            #$self->put_text_to_clipboard($text);
+            #Wx::wxTheClipboard->UsePrimarySelection(0);
+            #Wx::wxTheClipboard->Close();
 	}
 
 	my $doc = $self->{Document};
@@ -892,14 +894,20 @@
 	# It seems that another event is doing something but not within this module.
 	# Please look at ticket #390 for details!
 
-	Padre::Current->editor->Paste;
-
+	Wx::wxTheClipboard->Open;
+	Wx::wxTheClipboard->UsePrimarySelection(1);
+	my $wm_clip = Wx::TextDataObject->new;
+	Wx::wxTheClipboard->GetData($wm_clip);
+	Padre::Current->editor->ReplaceSelection($wm_clip->GetText);
+	Wx::wxTheClipboard->UsePrimarySelection(0);
+	Wx::wxTheClipboard->Close;
+	
 	my $doc = $self->{Document};
 	if ( $doc->can('event_on_middle_up') ) {
 		$doc->event_on_middle_up( $self, $event );
 	}
 
-	$event->Skip;
+	#$event->Skip;
 	return;
 }
 
