lib/run_loop/device.rb in run_loop-2.5.2 vs lib/run_loop/device.rb in run_loop-2.5.3
- old
+ new
@@ -289,14 +289,25 @@
}.call
end
# @!visibility private
def simulator_preferences_plist_path
- @simulator_preferences_plist_path ||= lambda {
- return nil if physical_device?
- File.join(simulator_root_dir, 'data/Library/Preferences/com.apple.Preferences.plist')
- }.call
+ return nil if physical_device?
+
+
+ directory = File.join(simulator_root_dir, "data", "Library", "Preferences")
+
+ if !File.exist?(directory)
+ FileUtils.mkdir_p(directory)
+ end
+
+ plist = File.join(directory, "com.apple.Preferences.plist")
+
+ if !File.exist?(plist)
+ pbuddy.create_plist(plist)
+ end
+ plist
end
# @!visibility private
def simulator_log_file_path
@simulator_log_file_path ||= lambda {
@@ -530,10 +541,20 @@
end
running_apps
end
+ def simulator_software_keyboard_will_show?
+ plist = simulator_preferences_plist_path
+ pbuddy.plist_read("AutomaticMinimizationEnabled", plist).to_i == 0
+ end
+
+ def simulator_ensure_software_keyboard_will_show
+ plist = simulator_preferences_plist_path
+ pbuddy.plist_set("AutomaticMinimizationEnabled", "integer", 0, plist)
+ end
+
=begin
PRIVATE METHODS
=end
private
@@ -612,10 +633,12 @@
# @!visibility private
def simulator_required_child_processes
@simulator_required_child_processes ||= begin
required = ["backboardd", "installd", "SimulatorBridge", "SpringBoard"]
- if xcode.version_gte_8? && version.major > 8
+ if xcode.version_gte_90?
+ required << "filecoordinationd"
+ elsif xcode.version_gte_8? && version.major > 8
required << "medialibraryd"
end
if simulator_is_ipad? && version.major == 9
required << "com.apple.audio.SystemSoundServer-iOS-Simulator"