diff --git a/lcl/interfaces/cocoa/cocoagdiobjects.pas b/lcl/interfaces/cocoa/cocoagdiobjects.pas index ab15d97b42..f94fdd3ea1 100644 --- a/lcl/interfaces/cocoa/cocoagdiobjects.pas +++ b/lcl/interfaces/cocoa/cocoagdiobjects.pas @@ -725,9 +725,10 @@ begin end; HasAlpha := AType in [cbtARGB, cbtRGBA]; - if HasAlpha then - BitmapFormat := NSAlphaNonpremultipliedBitmapFormat - else + // Non premultiplied bitmaps can't be used for bitmap context + //if HasAlpha then + // BitmapFormat := NSAlphaNonpremultipliedBitmapFormat + //else BitmapFormat := 0; if AType in [cbtARGB, cbtRGB] then BitmapFormat := BitmapFormat or NSAlphaFirstBitmapFormat; @@ -754,7 +755,7 @@ end; constructor TCocoaBitmap.CreateDefault; begin - Create(1, 1, 32, 32, cbaDQWord, cbtARGB, nil); + Create(1, 1, 32, 32, cbaByte, cbtARGB, nil); end; destructor TCocoaBitmap.Destroy; @@ -2535,6 +2536,9 @@ var begin if ADC = nil then Exit; + if ADC.CGContext = nil then + Exit; + if UseROP2 then AROP2 := ADC.ROP2 else diff --git a/lcl/interfaces/cocoa/cocoawsstdctrls.pp b/lcl/interfaces/cocoa/cocoawsstdctrls.pp index 139b106974..7b52821d5e 100644 --- a/lcl/interfaces/cocoa/cocoawsstdctrls.pp +++ b/lcl/interfaces/cocoa/cocoawsstdctrls.pp @@ -354,7 +354,6 @@ begin if not AButton.HandleAllocated then Exit; cf := NSStringUtf8(DefEq[ADefault]); - NSButton(AButton.Handle).setKeyEquivalent(cf); cf.release; end;