Difference between revisions of "Talk:Portal:Mac"

From Lazarus wiki
Jump to navigationJump to search
(→‎To do: A never-ending list addition)
m (→‎Cross-Platform To Do: Wiki op check)
 
(20 intermediate revisions by the same user not shown)
Line 32: Line 32:
 
* <strike>[[macOS NSString Regular Expressions]] article</strike>
 
* <strike>[[macOS NSString Regular Expressions]] article</strike>
 
* <strike>Save form state (position and size) using Mac preferences system: [[macOS Form Position Save and Restore‎‎]]</strike>
 
* <strike>Save form state (position and size) using Mac preferences system: [[macOS Form Position Save and Restore‎‎]]</strike>
 +
* <strike>AVPlayer - AVKit and AVFoundation [[macOS Video Player]]</strike>
 +
* <strike>[[macOS Progress Indicators]]</strike>
 +
* <strike>[[macOS_NSURLSession#Downloading_files_with_graphical_user_interface_feedback|Updating the GUI from a non-main thread]] (eg NSURLSession progress etc)</strike>
 +
* <strike>[[macOS NSStatusBar|Adding application status items to the menu bar]]</strike>
 +
* <strike>[[lNet_examples#Lazarus_SMTP_client_example_for_macOS|macOS email client using lNet library]]</strike>
 +
* <strike>[[Synapse#Advanced_SMTP_client|macOS email client using Synapse library]]</strike>
  
 
===In progress===
 
===In progress===
Line 39: Line 45:
 
** system-wide launch daemons - done (still need launch_activate_socket() for servers)
 
** system-wide launch daemons - done (still need launch_activate_socket() for servers)
 
* [[macOS Energy Efficiency Guide]] - started, in progress
 
* [[macOS Energy Efficiency Guide]] - started, in progress
 +
* Add full project source code to SourceForge for all my examples... will take a while.
  
 
===Stalled===
 
===Stalled===
  
 
* UNUserNotificationCenter notification for Big Sur [stalled]
 
* UNUserNotificationCenter notification for Big Sur [stalled]
* AVPlayer - AVKit and AVFoundation Movie Player [stalled]
 
  
 
===To do===
 
===To do===
Line 50: Line 56:
 
* Alain's AudioQueue example
 
* Alain's AudioQueue example
 
* AVSpeechSynthesizer
 
* AVSpeechSynthesizer
* NSFileManager
+
* NSFileManager (mentioned in [[macOS NSURLSession]])
 
* 64 bit Global HotKey (Carbon units needed - see MacPortalToDo.txt)
 
* 64 bit Global HotKey (Carbon units needed - see MacPortalToDo.txt)
 
* Screenshot (see MacPortalToDo.txt)
 
* Screenshot (see MacPortalToDo.txt)
Line 56: Line 62:
 
* [https://developer.apple.com/documentation/security/preventing_insecure_network_connections?language=objc Preventing Insecure Network Connections]  
 
* [https://developer.apple.com/documentation/security/preventing_insecure_network_connections?language=objc Preventing Insecure Network Connections]  
 
** [https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CocoaKeys.html Cocoa Keys]
 
** [https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CocoaKeys.html Cocoa Keys]
* macoS versions and missing features in older versions page (see [[Accessing_macOS_System_Information#Gestalt_Manager|this page section]] for the approach.
+
* macoS versions and missing features in older versions page (see [[Accessing_macOS_System_Information#Gestalt_Manager|this page section]] for the approach).
 
* Using WKWebView (10.10+) - see [https://forum.lazarus.freepascal.org/index.php/topic,42001 this forum thread]
 
* Using WKWebView (10.10+) - see [https://forum.lazarus.freepascal.org/index.php/topic,42001 this forum thread]
 
* Logging in macOS: https://developer.apple.com/documentation/os/logging
 
* Logging in macOS: https://developer.apple.com/documentation/os/logging
* String assignment post 2019 (find it and add to Tips)
+
* String assignment post 2019 (find it and add to Tips) ???
 
* Detect "best" web browser - up to 10.15 <tt>LSCopyAllHandlersForURLScheme(CFSTR("https"))</tt> then <tt>LSCopyApplicationURLsForURL</tt> - see LSInfo.pas
 
* Detect "best" web browser - up to 10.15 <tt>LSCopyAllHandlersForURLScheme(CFSTR("https"))</tt> then <tt>LSCopyApplicationURLsForURL</tt> - see LSInfo.pas
 
* Distribute via app store https://developer.apple.com/forums/thread/128166
 
* Distribute via app store https://developer.apple.com/forums/thread/128166
 +
* To reload the plist file manually (avoid cached copy), use defaults read <filename>.plist to read the new plist values or maybe
 +
killall cfprefsd && killall Finder
 +
 +
== Cross-Platform To Do ==
 +
 +
* OpenSSL, LibreSSL, etc

Latest revision as of 00:02, 3 May 2022

Light bulb  Note: A list of macOS items, native code techniques etc to document in the Mac Portal

Trev's Mac Portal ToDo List

Done

In progress

  • macOS daemons and agents new macOS daemons and agents page - done but:
    • awaiting code examples: boot script; monitor script; login agent to do(?)
    • system-wide launch daemons - done (still need launch_activate_socket() for servers)
  • macOS Energy Efficiency Guide - started, in progress
  • Add full project source code to SourceForge for all my examples... will take a while.

Stalled

  • UNUserNotificationCenter notification for Big Sur [stalled]

To do

killall cfprefsd && killall Finder

Cross-Platform To Do

  • OpenSSL, LibreSSL, etc