Print this page
rev 54883 : JDK-8220154 Improve java2d rendering performance on macOS by using Metal framework
Split |
Close |
Expand all |
Collapse all |
--- old/src/java.desktop/macosx/native/libawt_lwawt/awt/AWTView.h
+++ new/src/java.desktop/macosx/native/libawt_lwawt/awt/AWTView.h
1 1 /*
2 2 * Copyright (c) 2011, 2016, Oracle and/or its affiliates. All rights reserved.
3 3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 4 *
5 5 * This code is free software; you can redistribute it and/or modify it
6 6 * under the terms of the GNU General Public License version 2 only, as
7 7 * published by the Free Software Foundation. Oracle designates this
8 8 * particular file as subject to the "Classpath" exception as provided
9 9 * by Oracle in the LICENSE file that accompanied this code.
10 10 *
11 11 * This code is distributed in the hope that it will be useful, but WITHOUT
12 12 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
13 13 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
14 14 * version 2 for more details (a copy is included in the LICENSE file that
15 15 * accompanied this code).
16 16 *
↓ open down ↓ |
16 lines elided |
↑ open up ↑ |
17 17 * You should have received a copy of the GNU General Public License version
18 18 * 2 along with this work; if not, write to the Free Software Foundation,
19 19 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
20 20 *
21 21 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
22 22 * or visit www.oracle.com if you need additional information or have any
23 23 * questions.
24 24 */
25 25
26 26 #import <Cocoa/Cocoa.h>
27 -
27 +#import <Metal/Metal.h>
28 +#import <MetalKit/MetalKit.h>
28 29 #import "CDragSource.h"
29 30 #import "CDropTarget.h"
30 31
31 32 @interface AWTView : NSView<NSTextInputClient, CDragSourceHolder, CDropTargetHolder> {
32 33 @private
33 34 jobject m_cPlatformView;
34 35
35 36 // Handler for the tracking area needed for Enter/Exit events management.
36 37 NSTrackingArea* rolloverTrackingArea;
37 38
38 39 // TODO: NSMenu *contextualMenu;
39 40
40 41 // dnd support (see AppKit/NSDragging.h, NSDraggingSource/Destination):
41 42 CDragSource *_dragSource;
42 43 CDropTarget *_dropTarget;
43 44
44 45 // Input method data
45 46 jobject fInputMethodLOCKABLE;
46 47 BOOL fKeyEventsNeeded;
47 48 BOOL fProcessingKeystroke;
48 49
49 50 BOOL fEnablePressAndHold;
50 51 BOOL fInPressAndHold;
51 52 BOOL fPAHNeedsToSelect;
52 53
53 54 id cglLayer; // is a sublayer of view.layer
54 55
55 56 BOOL mouseIsOver;
56 57 }
57 58
58 59 @property (nonatomic, retain) id cglLayer;
59 60 @property (nonatomic) BOOL mouseIsOver;
60 61
61 62 - (id) initWithRect:(NSRect) rect platformView:(jobject)cPlatformView windowLayer:(CALayer*)windowLayer;
62 63 - (void) deliverJavaMouseEvent: (NSEvent *) event;
63 64 - (jobject) awtComponent:(JNIEnv *)env;
64 65
65 66 + (AWTView *) awtView:(JNIEnv *)env ofAccessible:(jobject)jaccessible;
66 67
67 68 // Input method-related events
68 69 - (void)setInputMethod:(jobject)inputMethod;
69 70 - (void)abandonInput;
70 71
71 72 @end
↓ open down ↓ |
34 lines elided |
↑ open up ↑ |
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX