Welkom bij de Tweaking4All gemeenschapsforums!
Voor je gaat deelnemen, bekijk de Forum Regels!
Specifieke onderwerpen: Start het onderwerp met de naam van het programma of systeem.
Bijvoorbeeld “MacOS X – Jouw vraag“, of bijvoorbeeld “MS Word – Jouw Tip of Truc“.
Merk op: Omschakelen naar een andere taal zal niet werken als je een post aan het lezen bent aangezien er waarschijnlijk geen vertaling beschikbaar is.
[Opgelost] Lazarus Pascal - macOS - Zichtbaar maken of verbergen van Dock icon in code
Delphi, Lazarus, Free Pascal
(@hans)
Famed Member Admin
Deelgenomen: 12 jaar geleden
Berichten: 2835
Topic starter
15 augustus 2022 17:26
Duurde even voor ik het uitgevogeld, vandaar dat ik het hier post in de hoop dat anderen er ook wat aan hebben.
De meesten kennen vast de plist truck welke de icon verbergt (werkt in combinatie met de code!):
<key>LSUIElement</key>
<string>1</string>
In ons programma kunnen we dit echter niet zo maar veranderen.
Deze functie verbergt een dock icon van jouw applicatie, of maakt die weer zichtbaar.
Merk op:
- verbergen van de icon, zorgt er voor dat de form van jouw applicatie ook verborgen wordt (net als met form1.hide) maar met form1.show wordt het weer zichtbaar en blijft de icon verborgen.
- Blijkbaar geven "NSApplicationActivationPolicyAccessory" en "NSApplicationActivationPolicyProhibited" hetzelfde.
{$mode objfpc}{$H+}
{$modeswitch objectivec1}
uses
... CocoaAll ...;
procedure t4a_ToggleDockIcon(ShowIcon:boolean);
begin
if ShowIcon then
NSApplication.sharedApplication.setActivationPolicy(NSApplicationActivationPolicyRegular)
else
NSApplication.sharedApplication.setActivationPolicy(NSApplicationActivationPolicyAccessory);
end;