Reputation: 3113
This must be documented somewhere, but I can't find it.
In my app using the iPad simulator there is a textfield into which I want the user to paste text. In the real world the user will copy the text from Safari address into the textfield. But I am trying to do that in the ios ipad simulator, but with only partial results.
After I reRUN the app, I can immediately paste text into the textfield with the Mac's Edit|Paste Text
menu or with Shift-Command-V, (but not with just Edit|Paste
, but that's Ok). The need for the Shift is annoying but I can live with it.
But then if I try to copy another URL on the Mac and then again, Edit|Paste Text
or even use the Paste
bubble on the simulator, I don't get the new text, but the original text.
Is that common? Is that a feature of the simulator that it is not connected live to the clipboard on the host computer?
Upvotes: 188
Views: 135536
Reputation: 1601
If you are using Better Touch Tool(BTT), you can create CMD+V action for iOS Simulator and run an apple script that will do the past clipboard
tell application "System Events"
set theText to get the clipboard as text
repeat with aCharacter in characters of theText
keystroke aCharacter
delay 0.05
end repeat
end tell
I hope it will help somebody.
P.S don't forget to bump the answer if it's helped 👍
UPD: script updated
Upvotes: 2
Reputation: 14903
I was trying to get around the permissions box that pops up when you try to paste.
This is what seemed to work for me:
Upvotes: 2
Reputation: 367
Please install iOS 16.2 simulator and it should work in this OS if ticking/unticking automatically sync pasteboard is not working for you.
iOS 14.5: Not working iOS 15.4: Not working iOS 16.2: Working
Upvotes: 6
Reputation: 1651
Untick and tick again "Automatically Snyc Pasteboard". Then quit the simulator and re-open it. This is what fixed it for me.
Upvotes: 12
Reputation: 31
This is a solution that might work if you are working with React Native.
I ran into this issue now with my M1 Pro Macbook. It started when I updated Xcode to 14.0 before that everything worked fine.
What seems to be the issue is that I'm running terminal in Rosetta. When starting the simulator via npx react-native run-ios
this starts the simulator in Rosetta as well (I'm assuming here cannot prove it).
Solution: Make sure Xcode is running natively and running the project from Xcode instead of Terminal, the Copy-paste functionality should work again.
Upvotes: 1
Reputation: 976
Facing the same issue on Apple M2 and Simulator 13.4.1, I was digging into my OS logs and it seems that there are some issues in the Simulator - I guess - since I can read that it is not able to retrieve the content of the pasteboard, stored in a file. I can still open myself the file and confirm the content of the pasteboard is OK.
After request access to the corresponding file while pasting (either using "Paste" menu or classic cmd+V), I can read something like :
Upload preparation for claim XXXX completed with error:
Error Domain=NSCocoaErrorDomain
Code=256 "Impossible d’ouvrir le fichier « bbbb »."
UserInfo={
NSURL=file:///Users/username/Library/Developer/CoreSimulator/Devices/XXXX/data/Library/Caches/com.apple.Pasteboard/ZZZZZ/,
NSFilePath=/Users/username/Library/Developer/CoreSimulator/Devices/XXXX/data/Library/Caches/com.apple.Pasteboard/ZZZZZ/data/Library/Caches/com.apple.Pasteboard/aaaaa/bbbb,
NSUnderlyingError=0x6000005105d0
{Error Domain=NSOSStatusErrorDomain Code=-10817 "(null)"}}
So I guess, Apple has just some adjustments still on-going on the Simulator. Thus, neither disabling/enabling Auto-sync nor forcing sync of the pasteboard worked in my case.
Upvotes: 1
Reputation: 133
After trying a lot and nothing work on M1 Macs and simulator above 14 I have taken the different route to solve problem.
Apple script to type the text in simulator.
tell application "System Events"
set texttosay to "Sample Text"
display dialog "Text to type:" default answer "white: "
set texttosay to the text returned of the result
repeat
delay 2
repeat 1 times
keystroke texttosay
delay 1
keystroke return
end repeat
exit repeat
end repeat
end tell
Steps:
Hope that helps in your problem.
Thanks
Upvotes: 10
Reputation: 305
Just Disable and then re-enable the Automatically Sync Pasteboard
option from Edit
menu, fixed my problem.
Upvotes: 9
Reputation: 522
Nothing from the above solutions worked for me. I am using M1 Apple
. The thing that worked was this thread https://github.com/flutter/flutter/issues/74970
In short, if you are using iOS 14.0
to build the app, you will have the above issues.
In order to solve it, what I did was installing iOS 13.7
in xCode by going to
Preferences -> Components -> iOS 13.7 -> then rebuild the app in the xCode.
Upvotes: 6
Reputation: 43
None of these solutions worked for me. I'm using Simulator 11.4. And after trying each of these, I realized all I needed to do was copy something on my Mac using Command + C, and then in the simulator text field, simply hold down the mouse click for an extra second or two, and the paste menu popped up automatically, and worked great.
Upvotes: -2
Reputation: 59
Similar thing happened to me and I found a strange workaround, it may help anyone else that may come across the same issue. Try the following steps:
Automatically Sync Pasteboard
option, it's found under the Edit
menu on the SimulatorCmd+A
and then cut/copy Cmd+X
/Cmd+C
Upvotes: 10
Reputation: 889
Xcode 10.0+:
Turning the Automatic Pasteboard Sync off and then back on again solved the issue.
You might have to do that multiple times. Sometimes it takes a while to trigger it for some reason.
(Edit -> Automatic Pasteboard Sync)
Upvotes: 18
Reputation: 3233
sometimes you just need to select Hardware -> reset content and settings in simulator menu. then all works automatically as easy and transparent as working in MacOS with other applications
Upvotes: 0
Reputation: 3144
I updated to os x 10.13.6 and xcode 10.1 and there is an added menu in edit
click get pasteboard
then you will be able to paste via the paste tooltip in simulator
Upvotes: 10
Reputation: 616
In a new emulator, I got no "paste" option and sync did not work for the simulator. It appears that in the simulator you MUST copy something to the internal clipboard before the sync actually works.
Upvotes: 4
Reputation: 2627
I found that even with Edit > Automatically sync pasteboard ticked, the feature didn't work.
However, simply unticking and then reticking this option fixed the feature!
Hope it works for someone.
Upvotes: 196
Reputation: 625
Please click "Automatically sync pasteboard" option in Simulator edit option.
Upvotes: 20
Reputation: 6885
⌘ + V : When iOS simulator is in front,copy the contents of the OS X clipboard over to iOS, but doesn't paste it. Again, this works for both text and images.
So you need to do as follows:
1.copy text anywhere in your macOS except iOS simulator.
2.in iOS simulator, click ⌘ + V, copy text from macOS clipboard to iOS simulator's clipborad.
3.in iOS simulator, TextField or TextView click -> Edit ->Paste.
Upvotes: -1
Reputation: 1957
This is what I found.
Shift + Cmd + V works great too.
Upvotes: -1
Reputation: 5206
Three steps:(The key point is make sure that the "Paste" help menu is keeping visible when you use " ⌘ + V".)
Upvotes: 1
Reputation: 2221
This works for me. On Safari version 8.0.3 and IOs simulator version 8.1
Upvotes: -1
Reputation: 2558
Be careful to avoid conflating the mac's clipboard with the simulator's clipboard. They are not the same.
The simulator is simulating an iOS device, with it's own iOS clipboard which apps running on that device (simulator) use via the iOS pup-up select-all/copy/paste UI items.
Completely separate from that: your mac has it's own clipboard and content. The Simulator program running on your mac provides the Edit > Paste Text menu item. The program implements that menu item by accessing your mac clipboard and types the text into the simulator as if the user used the keyboard. The iOS clipboard is neither accessed nor affected by the Simulator application's Edit menu functions.
Update: As of Xcode 6, you need to choose the Edit > Paste
menu item in the iOS Simulator (this transfers the data between the Mac clipboard and the iOS Clipboard), then tap in the field in the simulator and tap the "Paste" bubble.
In your question you don't specify which "Safari" you're copying the URL from. It could be the mac safari application or the simulator's safari app. Doing a copy from the mac safari program goes to the mac clipboard, doing a copy from the safari app goes to the iOS clipboard inside the simulator.
I think your issues are coming from confusing the two, thinking there's one clipboard everything is sharing.
Upvotes: 110
Reputation: 629
What worked for me is this.
1) copy text from Mac
2) In simulator do edit->paste or Command V (I think this copies the text from mac clipboard to iOS Simulator clipboard).
3) Highlight the textfield in simulator and then do command + Shift + V.
Upvotes: 12
Reputation: 836
Copy text on the mac, then click the text field in the simulator and press
Shift Command V
Upvotes: 68
Reputation: 6357
Sometimes it's very difficult to type long URLs in iOS simulator. There should be some way to copy URL from Max OS to iOS text field. Here's how you can do it:
Edit
-> Paste Text
and that's it. Your text from the Mac OS copy buffer should now be there in iOS simulator's text field.
Upvotes: 1