metal: contrary to documentation, we need to set the drawableSize explicitly.

Fixes Bugzilla #4149.
This commit is contained in:
Ryan C. Gordon 2018-05-27 20:30:03 -04:00
parent 8325df25aa
commit 3d3870982c
2 changed files with 5 additions and 6 deletions

View File

@ -66,11 +66,10 @@
/* Allow resize. */ /* Allow resize. */
self.autoresizingMask = NSViewWidthSizable | NSViewHeightSizable; self.autoresizingMask = NSViewWidthSizable | NSViewHeightSizable;
/* Set the desired scale. The default drawableSize of a CAMetalLayer /* Set the desired scale. */
* is its bounds x its scale so nothing further needs to be done. ((CAMetalLayer *) self.layer).drawableSize = NSSizeToCGSize([self bounds].size);
*/
self.layer.contentsScale = scale; self.layer.contentsScale = scale;
} }
return self; return self;
} }

View File

@ -49,8 +49,8 @@
{ {
if ((self = [super initWithFrame:frame])) { if ((self = [super initWithFrame:frame])) {
self.tag = METALVIEW_TAG; self.tag = METALVIEW_TAG;
/* Set the desired scale. The default drawableSize of a CAMetalLayer /* Set the desired scale. */
* is its bounds x its scale so nothing further needs to be done. */ ((CAMetalLayer *) self.layer).drawableSize = self.bounds.size;
self.layer.contentsScale = scale; self.layer.contentsScale = scale;
} }