blob: 9e85fad24f248e65504bd6fe0972edfd2c9ea531 [file] [log] [blame]
// Copyright (c) 2013 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#import "ui/base/cocoa/nsgraphics_context_additions.h"
@implementation NSGraphicsContext (CrAdditions)
- (void)cr_setPatternPhase:(NSPoint)phase
forView:(NSView*)view {
NSView* ancestorWithLayer = view;
while (ancestorWithLayer && ![ancestorWithLayer layer])
ancestorWithLayer = [ancestorWithLayer superview];
if (ancestorWithLayer) {
NSPoint bottomLeft = NSZeroPoint;
if ([ancestorWithLayer isFlipped])
bottomLeft.y = NSMaxY([ancestorWithLayer bounds]);
NSPoint offset = [ancestorWithLayer convertPoint:bottomLeft toView:nil];
phase.x -= offset.x;
phase.y -= offset.y;
[self setPatternPhase:phase];