pub struct BrowserViewMac { /* private fields */ }Expand description
macOS NSView that hosts the Chromium rendering surface.
Implementations§
Source§impl BrowserViewMac
impl BrowserViewMac
Sourcepub fn new(
mtm: MainThreadMarker,
config: BrowserViewMacConfig,
) -> Retained<Self>
pub fn new( mtm: MainThreadMarker, config: BrowserViewMacConfig, ) -> Retained<Self>
Create a new BrowserViewMac on the main thread.
Sourcepub fn set_context_id(&self, context_id: ContextId)
pub fn set_context_id(&self, context_id: ContextId)
Set the CALayerHost context id used to display Chromium content.
Sourcepub fn set_layer_frame(&self, frame: CGRect)
pub fn set_layer_frame(&self, frame: CGRect)
Update the layer frame without implicit animations.
Sourcepub fn set_ime_bounds(&self, update: ImeBoundsUpdate)
pub fn set_ime_bounds(&self, update: ImeBoundsUpdate)
Update IME bounds so macOS can place candidate windows correctly.
Sourcepub fn browser_layer(&self) -> &CALayerHost
pub fn browser_layer(&self) -> &CALayerHost
Access the underlying CALayerHost used for rendering.
Show a context menu built from backend menu data.
Show a host-owned <select> choice menu.
Show a host-owned <select> choice menu with a custom presenter.
Sourcepub fn start_native_drag_session(&self, request: &DragStartRequest) -> bool
pub fn start_native_drag_session(&self, request: &DragStartRequest) -> bool
Start a native macOS drag session for host-owned drag lifecycle.
Methods from Deref<Target = NSView>§
pub fn enclosingMenuItem(&self) -> Option<Retained<NSMenuItem>>
pub fn window(&self) -> Option<Retained<NSWindow>>
Sourcepub unsafe fn superview(&self) -> Option<Retained<NSView>>
pub unsafe fn superview(&self) -> Option<Retained<NSView>>
§Safety
This is not retained internally, you must ensure the object is still alive.
pub fn subviews(&self) -> Retained<NSArray<NSView>>
Sourcepub fn setSubviews(&self, subviews: &NSArray<NSView>)
pub fn setSubviews(&self, subviews: &NSArray<NSView>)
pub fn isDescendantOf(&self, view: &NSView) -> bool
Sourcepub unsafe fn opaqueAncestor(&self) -> Option<Retained<NSView>>
pub unsafe fn opaqueAncestor(&self) -> Option<Retained<NSView>>
§Safety
This is not retained internally, you must ensure the object is still alive.
pub fn isHidden(&self) -> bool
pub fn isHiddenOrHasHiddenAncestor(&self) -> bool
Sourcepub unsafe fn getRectsBeingDrawn_count(
&self,
rects: *mut *const CGRect,
count: *mut isize,
)
pub unsafe fn getRectsBeingDrawn_count( &self, rects: *mut *const CGRect, count: *mut isize, )
§Safety
rectsmust be a valid pointer or null.countmust be a valid pointer or null.
pub fn needsToDrawRect(&self, rect: CGRect) -> bool
pub fn wantsDefaultClipping(&self) -> bool
pub fn viewDidHide(&self)
pub fn viewDidUnhide(&self)
pub fn addSubview(&self, view: &NSView)
Sourcepub unsafe fn sortSubviewsUsingFunction_context(
&self,
compare: unsafe extern "C-unwind" fn(NonNull<NSView>, NonNull<NSView>, *mut c_void) -> NSComparisonResult,
context: *mut c_void,
)
pub unsafe fn sortSubviewsUsingFunction_context( &self, compare: unsafe extern "C-unwind" fn(NonNull<NSView>, NonNull<NSView>, *mut c_void) -> NSComparisonResult, context: *mut c_void, )
§Safety
comparemust be implemented correctly.contextmust be a valid pointer or null.
pub fn viewWillMoveToWindow(&self, new_window: Option<&NSWindow>)
pub fn viewDidMoveToWindow(&self)
pub fn viewWillMoveToSuperview(&self, new_superview: Option<&NSView>)
pub fn viewDidMoveToSuperview(&self)
pub fn didAddSubview(&self, subview: &NSView)
pub fn willRemoveSubview(&self, subview: &NSView)
pub fn removeFromSuperview(&self)
pub fn replaceSubview_with(&self, old_view: &NSView, new_view: &NSView)
pub fn removeFromSuperviewWithoutNeedingDisplay(&self)
pub fn viewDidChangeBackingProperties(&self)
pub fn postsFrameChangedNotifications(&self) -> bool
Sourcepub fn setPostsFrameChangedNotifications(
&self,
posts_frame_changed_notifications: bool,
)
pub fn setPostsFrameChangedNotifications( &self, posts_frame_changed_notifications: bool, )
Setter for postsFrameChangedNotifications.
pub fn resizeSubviewsWithOldSize(&self, old_size: CGSize)
pub fn resizeWithOldSuperviewSize(&self, old_size: CGSize)
pub fn autoresizesSubviews(&self) -> bool
Sourcepub fn setAutoresizesSubviews(&self, autoresizes_subviews: bool)
pub fn setAutoresizesSubviews(&self, autoresizes_subviews: bool)
Setter for autoresizesSubviews.
pub fn autoresizingMask(&self) -> NSAutoresizingMaskOptions
Sourcepub fn setAutoresizingMask(&self, autoresizing_mask: NSAutoresizingMaskOptions)
pub fn setAutoresizingMask(&self, autoresizing_mask: NSAutoresizingMaskOptions)
Setter for autoresizingMask.
pub fn setFrameOrigin(&self, new_origin: CGPoint)
pub fn setFrameSize(&self, new_size: CGSize)
pub fn frame(&self) -> CGRect
pub fn setBoundsOrigin(&self, new_origin: CGPoint)
pub fn setBoundsSize(&self, new_size: CGSize)
pub fn translateOriginToPoint(&self, translation: CGPoint)
pub fn scaleUnitSquareToSize(&self, new_unit_size: CGSize)
pub fn bounds(&self) -> CGRect
pub fn isFlipped(&self) -> bool
pub fn isRotatedFromBase(&self) -> bool
pub fn isRotatedOrScaledFromBase(&self) -> bool
pub fn isOpaque(&self) -> bool
pub fn convertPoint_fromView( &self, point: CGPoint, view: Option<&NSView>, ) -> CGPoint
pub fn convertPoint_toView( &self, point: CGPoint, view: Option<&NSView>, ) -> CGPoint
pub fn convertSize_fromView( &self, size: CGSize, view: Option<&NSView>, ) -> CGSize
pub fn convertSize_toView(&self, size: CGSize, view: Option<&NSView>) -> CGSize
pub fn convertRect_fromView( &self, rect: CGRect, view: Option<&NSView>, ) -> CGRect
pub fn convertRect_toView(&self, rect: CGRect, view: Option<&NSView>) -> CGRect
pub fn backingAlignedRect_options( &self, rect: CGRect, options: NSAlignmentOptions, ) -> CGRect
pub fn centerScanRect(&self, rect: CGRect) -> CGRect
pub fn convertPointToBacking(&self, point: CGPoint) -> CGPoint
pub fn convertPointFromBacking(&self, point: CGPoint) -> CGPoint
pub fn convertSizeToBacking(&self, size: CGSize) -> CGSize
pub fn convertSizeFromBacking(&self, size: CGSize) -> CGSize
pub fn convertRectToBacking(&self, rect: CGRect) -> CGRect
pub fn convertRectFromBacking(&self, rect: CGRect) -> CGRect
pub fn convertPointToLayer(&self, point: CGPoint) -> CGPoint
pub fn convertPointFromLayer(&self, point: CGPoint) -> CGPoint
pub fn convertSizeToLayer(&self, size: CGSize) -> CGSize
pub fn convertSizeFromLayer(&self, size: CGSize) -> CGSize
pub fn convertRectToLayer(&self, rect: CGRect) -> CGRect
pub fn convertRectFromLayer(&self, rect: CGRect) -> CGRect
pub fn canDrawConcurrently(&self) -> bool
Sourcepub unsafe fn setCanDrawConcurrently(&self, can_draw_concurrently: bool)
pub unsafe fn setCanDrawConcurrently(&self, can_draw_concurrently: bool)
Setter for canDrawConcurrently.
pub fn canDraw(&self) -> bool
If a view needs display, -drawRect: or -updateLayer will be called automatically when the view is able to draw. To check whether a view is in a window, call -window. To check whether a view is hidden, call -isHiddenOrHasHiddenAncestor.
pub fn setNeedsDisplayInRect(&self, invalid_rect: CGRect)
pub fn needsDisplay(&self) -> bool
Sourcepub fn setNeedsDisplay(&self, needs_display: bool)
pub fn setNeedsDisplay(&self, needs_display: bool)
Setter for needsDisplay.
pub fn lockFocus(&self)
To draw, subclass NSView and implement -drawRect:; AppKit’s automatic deferred display mechanism will call -drawRect: as necessary to display the view.
pub fn unlockFocus(&self)
To draw, subclass NSView and implement -drawRect:; AppKit’s automatic deferred display mechanism will call -drawRect: as necessary to display the view.
pub fn lockFocusIfCanDraw(&self) -> bool
To draw, subclass NSView and implement -drawRect:; AppKit’s automatic deferred display mechanism will call -drawRect: as necessary to display the view.
pub fn lockFocusIfCanDrawInContext(&self, context: &NSGraphicsContext) -> bool
Use -[NSView displayRectIgnoringOpacity:inContext:] to draw a view subtree into a graphics context.
Sourcepub fn visibleRect(&self) -> CGRect
pub fn visibleRect(&self) -> CGRect
The portion of the view that isn’t clipped by its superviews.
Visibility, as reflected by this property, doesn’t account for whether other view or window objects overlap the current view or whether the current view is installed in a window at all. This value of this property is NSZeroRect if the current view is effectively hidden.
During a printing operation, the visible rectangle is further clipped to the page being imaged.
pub fn display(&self)
pub fn displayIfNeeded(&self)
pub fn displayIfNeededIgnoringOpacity(&self)
pub fn displayRect(&self, rect: CGRect)
pub fn displayIfNeededInRect(&self, rect: CGRect)
pub fn displayRectIgnoringOpacity(&self, rect: CGRect)
pub fn displayIfNeededInRectIgnoringOpacity(&self, rect: CGRect)
pub fn drawRect(&self, dirty_rect: CGRect)
pub fn displayRectIgnoringOpacity_inContext( &self, rect: CGRect, context: &NSGraphicsContext, )
pub fn viewWillDraw(&self)
pub fn scrollPoint(&self, point: CGPoint)
pub fn scrollRectToVisible(&self, rect: CGRect) -> bool
pub fn autoscroll(&self, event: &NSEvent) -> bool
pub fn adjustScroll(&self, new_visible: CGRect) -> CGRect
pub fn scrollRect_by(&self, rect: CGRect, delta: CGSize)
Use NSScrollView to achieve scrolling views.
pub fn translateRectsNeedingDisplayInRect_by( &self, clip_rect: CGRect, delta: CGSize, )
pub fn hitTest(&self, point: CGPoint) -> Option<Retained<NSView>>
pub fn mouse_inRect(&self, point: CGPoint, rect: CGRect) -> bool
pub fn viewWithTag(&self, tag: isize) -> Option<Retained<NSView>>
pub fn tag(&self) -> isize
pub fn performKeyEquivalent(&self, event: &NSEvent) -> bool
pub fn acceptsFirstMouse(&self, event: Option<&NSEvent>) -> bool
pub fn shouldDelayWindowOrderingForEvent(&self, event: &NSEvent) -> bool
pub fn needsPanelToBecomeKey(&self) -> bool
pub fn mouseDownCanMoveWindow(&self) -> bool
pub fn acceptsTouchEvents(&self) -> bool
Use allowedTouchTypes instead
Sourcepub fn setAcceptsTouchEvents(&self, accepts_touch_events: bool)
👎Deprecated: Use allowedTouchTypes instead
pub fn setAcceptsTouchEvents(&self, accepts_touch_events: bool)
Use allowedTouchTypes instead
Setter for acceptsTouchEvents.
pub fn wantsRestingTouches(&self) -> bool
Sourcepub fn setWantsRestingTouches(&self, wants_resting_touches: bool)
pub fn setWantsRestingTouches(&self, wants_resting_touches: bool)
Setter for wantsRestingTouches.
pub fn makeBackingLayer(&self) -> Retained<CALayer>
pub fn layerContentsRedrawPolicy(&self) -> NSViewLayerContentsRedrawPolicy
Sourcepub fn setLayerContentsRedrawPolicy(
&self,
layer_contents_redraw_policy: NSViewLayerContentsRedrawPolicy,
)
pub fn setLayerContentsRedrawPolicy( &self, layer_contents_redraw_policy: NSViewLayerContentsRedrawPolicy, )
Setter for layerContentsRedrawPolicy.
pub fn layerContentsPlacement(&self) -> NSViewLayerContentsPlacement
Sourcepub fn setLayerContentsPlacement(
&self,
layer_contents_placement: NSViewLayerContentsPlacement,
)
pub fn setLayerContentsPlacement( &self, layer_contents_placement: NSViewLayerContentsPlacement, )
Setter for layerContentsPlacement.
pub fn wantsLayer(&self) -> bool
Sourcepub fn setWantsLayer(&self, wants_layer: bool)
pub fn setWantsLayer(&self, wants_layer: bool)
Setter for wantsLayer.
pub fn layer(&self) -> Option<Retained<CALayer>>
pub fn wantsUpdateLayer(&self) -> bool
pub fn updateLayer(&self)
pub fn canDrawSubviewsIntoLayer(&self) -> bool
Sourcepub fn setCanDrawSubviewsIntoLayer(&self, can_draw_subviews_into_layer: bool)
pub fn setCanDrawSubviewsIntoLayer(&self, can_draw_subviews_into_layer: bool)
Setter for canDrawSubviewsIntoLayer.
pub fn layoutSubtreeIfNeeded(&self)
pub fn layout(&self)
pub fn needsLayout(&self) -> bool
Sourcepub fn setNeedsLayout(&self, needs_layout: bool)
pub fn setNeedsLayout(&self, needs_layout: bool)
Setter for needsLayout.
pub fn layerUsesCoreImageFilters(&self) -> bool
Sourcepub fn setLayerUsesCoreImageFilters(&self, layer_uses_core_image_filters: bool)
pub fn setLayerUsesCoreImageFilters(&self, layer_uses_core_image_filters: bool)
Setter for layerUsesCoreImageFilters.
pub fn clipsToBounds(&self) -> bool
Sourcepub fn setClipsToBounds(&self, clips_to_bounds: bool)
pub fn setClipsToBounds(&self, clips_to_bounds: bool)
Setter for clipsToBounds.
pub fn postsBoundsChangedNotifications(&self) -> bool
Sourcepub fn setPostsBoundsChangedNotifications(
&self,
posts_bounds_changed_notifications: bool,
)
pub fn setPostsBoundsChangedNotifications( &self, posts_bounds_changed_notifications: bool, )
Setter for postsBoundsChangedNotifications.
Sourcepub fn willOpenMenu_withEvent(&self, menu: &NSMenu, event: &NSEvent)
pub fn willOpenMenu_withEvent(&self, menu: &NSMenu, event: &NSEvent)
A contextual menu is being opened from the receiving view. The view should update any visual state in response — such as making a selection.
Parameter menu: The contextual menu that is being opened on the view
Parameter event: The event that caused the menu to open.
Sourcepub fn didCloseMenu_withEvent(&self, menu: &NSMenu, event: Option<&NSEvent>)
pub fn didCloseMenu_withEvent(&self, menu: &NSMenu, event: Option<&NSEvent>)
A contextual menu shown from the receiving view has been closed. This is only called if the menu had been opened and the view previously received
-willOpenMenu:withEvent:.The view should update any visual state in response — such as removing a temporary selection.
Parameter menu: The contextual menu that was open on the view
Parameter event: The event that caused the menu to close. This may be nil if there is no specific event that triggered the closing.
pub fn toolTip(&self) -> Option<Retained<NSString>>
Sourcepub fn setToolTip(&self, tool_tip: Option<&NSString>)
pub fn setToolTip(&self, tool_tip: Option<&NSString>)
Sourcepub unsafe fn addToolTipRect_owner_userData(
&self,
rect: CGRect,
owner: &AnyObject,
data: *mut c_void,
) -> isize
pub unsafe fn addToolTipRect_owner_userData( &self, rect: CGRect, owner: &AnyObject, data: *mut c_void, ) -> isize
§Safety
ownershould be of the correct type.datamust be a valid pointer or null.
pub fn removeToolTip(&self, tag: isize)
pub fn removeAllToolTips(&self)
pub fn viewWillStartLiveResize(&self)
pub fn viewDidEndLiveResize(&self)
pub fn inLiveResize(&self) -> bool
pub fn preservesContentDuringLiveResize(&self) -> bool
pub fn rectPreservedDuringLiveResize(&self) -> CGRect
pub fn rectForSmartMagnificationAtPoint_inRect( &self, location: CGPoint, visible_rect: CGRect, ) -> CGRect
pub fn prepareForReuse(&self)
pub fn prepareContentInRect(&self, rect: CGRect)
pub fn preparedContentRect(&self) -> CGRect
Sourcepub fn setPreparedContentRect(&self, prepared_content_rect: CGRect)
pub fn setPreparedContentRect(&self, prepared_content_rect: CGRect)
Setter for preparedContentRect.
pub fn allowsVibrancy(&self) -> bool
Sourcepub fn viewDidChangeEffectiveAppearance(&self)
pub fn viewDidChangeEffectiveAppearance(&self)
Override point for reacting to the effective appearance of the receiver changing. At this point effectiveAppearance property reflects the new appearance.
Sourcepub unsafe fn nextKeyView(&self) -> Option<Retained<NSView>>
pub unsafe fn nextKeyView(&self) -> Option<Retained<NSView>>
§Safety
This is not retained internally, you must ensure the object is still alive.
Sourcepub unsafe fn setNextKeyView(&self, next_key_view: Option<&NSView>)
pub unsafe fn setNextKeyView(&self, next_key_view: Option<&NSView>)
Setter for nextKeyView.
§Safety
This is unretained, you must ensure the object is kept alive while in use.
Sourcepub unsafe fn previousKeyView(&self) -> Option<Retained<NSView>>
pub unsafe fn previousKeyView(&self) -> Option<Retained<NSView>>
§Safety
This is not retained internally, you must ensure the object is still alive.
Sourcepub unsafe fn nextValidKeyView(&self) -> Option<Retained<NSView>>
pub unsafe fn nextValidKeyView(&self) -> Option<Retained<NSView>>
§Safety
This is not retained internally, you must ensure the object is still alive.
Sourcepub unsafe fn previousValidKeyView(&self) -> Option<Retained<NSView>>
pub unsafe fn previousValidKeyView(&self) -> Option<Retained<NSView>>
§Safety
This is not retained internally, you must ensure the object is still alive.
pub fn canBecomeKeyView(&self) -> bool
pub fn setKeyboardFocusRingNeedsDisplayInRect(&self, rect: CGRect)
pub fn drawFocusRingMask(&self)
pub fn focusRingMaskBounds(&self) -> CGRect
pub fn noteFocusRingMaskChanged(&self)
pub fn writeEPSInsideRect_toPasteboard( &self, rect: CGRect, pasteboard: &NSPasteboard, )
pub fn dataWithEPSInsideRect(&self, rect: CGRect) -> Retained<NSData>
pub fn writePDFInsideRect_toPasteboard( &self, rect: CGRect, pasteboard: &NSPasteboard, )
pub fn dataWithPDFInsideRect(&self, rect: CGRect) -> Retained<NSData>
Sourcepub unsafe fn print(&self, sender: Option<&AnyObject>)
pub unsafe fn print(&self, sender: Option<&AnyObject>)
§Safety
sender should be of the correct type.
Sourcepub unsafe fn knowsPageRange(&self, range: *mut NSRange) -> bool
pub unsafe fn knowsPageRange(&self, range: *mut NSRange) -> bool
§Safety
range must be a valid pointer.
pub fn rectForPage(&self, page: isize) -> CGRect
pub fn locationOfPrintRect(&self, rect: CGRect) -> CGPoint
pub fn drawPageBorderWithSize(&self, border_size: CGSize)
pub fn pageHeader(&self) -> Retained<NSAttributedString>
Sourcepub fn drawSheetBorderWithSize(&self, border_size: CGSize)
👎Deprecated: This is never invoked and the NSView implementation does nothing
pub fn drawSheetBorderWithSize(&self, border_size: CGSize)
This is never invoked and the NSView implementation does nothing
- This method is obsolete. It will never be invoked from within AppKit, and NSView’s implementation of it does nothing. **
pub fn printJobTitle(&self) -> Retained<NSString>
pub fn beginDocument(&self)
pub fn endDocument(&self)
pub fn beginPageInRect_atPlacement(&self, rect: CGRect, location: CGPoint)
pub fn endPage(&self)
pub fn beginDraggingSessionWithItems_event_source( &self, items: &NSArray<NSDraggingItem>, event: &NSEvent, source: &ProtocolObject<dyn NSDraggingSource>, ) -> Retained<NSDraggingSession>
pub fn registeredDraggedTypes(&self) -> Retained<NSArray<NSString>>
pub fn registerForDraggedTypes(&self, new_types: &NSArray<NSString>)
pub fn unregisterDraggedTypes(&self)
Sourcepub unsafe fn exitFullScreenModeWithOptions(
&self,
options: Option<&NSDictionary<NSString>>,
)
pub unsafe fn exitFullScreenModeWithOptions( &self, options: Option<&NSDictionary<NSString>>, )
§Safety
options generic should be of the correct type.
pub fn isInFullScreenMode(&self) -> bool
pub fn showDefinitionForAttributedString_atPoint( &self, attr_string: Option<&NSAttributedString>, text_baseline_origin: CGPoint, )
pub fn isDrawingFindIndicator(&self) -> bool
pub fn safeAreaInsets(&self) -> NSEdgeInsets
pub fn additionalSafeAreaInsets(&self) -> NSEdgeInsets
Sourcepub fn setAdditionalSafeAreaInsets(
&self,
additional_safe_area_insets: NSEdgeInsets,
)
pub fn setAdditionalSafeAreaInsets( &self, additional_safe_area_insets: NSEdgeInsets, )
Setter for additionalSafeAreaInsets.
pub fn safeAreaRect(&self) -> CGRect
Sourcepub fn prefersCompactControlSizeMetrics(&self) -> bool
pub fn prefersCompactControlSizeMetrics(&self) -> bool
When this property is true, any NSControls in the view or its descendants will be sized with compact metrics compatible with macOS 15 and earlier. Defaults to false
Sourcepub fn setPrefersCompactControlSizeMetrics(
&self,
prefers_compact_control_size_metrics: bool,
)
pub fn setPrefersCompactControlSizeMetrics( &self, prefers_compact_control_size_metrics: bool, )
Setter for prefersCompactControlSizeMetrics.
pub fn updateTrackingAreas(&self)
pub fn discardCursorRects(&self)
pub fn resetCursorRects(&self)
Sourcepub unsafe fn addTrackingRect_owner_userData_assumeInside(
&self,
rect: CGRect,
owner: &AnyObject,
data: *mut c_void,
flag: bool,
) -> isize
pub unsafe fn addTrackingRect_owner_userData_assumeInside( &self, rect: CGRect, owner: &AnyObject, data: *mut c_void, flag: bool, ) -> isize
§Safety
ownershould be of the correct type.datamust be a valid pointer or null.
pub fn removeTrackingRect(&self, tag: isize)
Sourcepub unsafe fn displayLinkWithTarget_selector(
&self,
target: &AnyObject,
selector: Sel,
) -> Retained<CADisplayLink>
pub unsafe fn displayLinkWithTarget_selector( &self, target: &AnyObject, selector: Sel, ) -> Retained<CADisplayLink>
§Safety
targetshould be of the correct type.selectormust be a valid selector.
Sourcepub unsafe fn dragImage_at_offset_event_pasteboard_source_slideBack(
&self,
image: &NSImage,
view_location: CGPoint,
initial_offset: CGSize,
event: &NSEvent,
pboard: &NSPasteboard,
source_obj: &AnyObject,
slide_flag: bool,
)
👎Deprecated: Use -beginDraggingSessionWithItems:event:source: instead
pub unsafe fn dragImage_at_offset_event_pasteboard_source_slideBack( &self, image: &NSImage, view_location: CGPoint, initial_offset: CGSize, event: &NSEvent, pboard: &NSPasteboard, source_obj: &AnyObject, slide_flag: bool, )
Use -beginDraggingSessionWithItems:event:source: instead
§Safety
source_obj should be of the correct type.
pub fn dragFile_fromRect_slideBack_event( &self, filename: &NSString, rect: CGRect, flag: bool, event: &NSEvent, ) -> bool
Use -beginDraggingSessionWithItems:event:source: instead
Sourcepub unsafe fn dragPromisedFilesOfTypes_fromRect_source_slideBack_event(
&self,
type_array: &NSArray<NSString>,
rect: CGRect,
source_object: &AnyObject,
flag: bool,
event: &NSEvent,
) -> bool
👎Deprecated: Use -beginDraggingSessionWithItems:event:source: with an NSFilePromiseProvider instead
pub unsafe fn dragPromisedFilesOfTypes_fromRect_source_slideBack_event( &self, type_array: &NSArray<NSString>, rect: CGRect, source_object: &AnyObject, flag: bool, event: &NSEvent, ) -> bool
Use -beginDraggingSessionWithItems:event:source: with an NSFilePromiseProvider instead
§Safety
source_object should be of the correct type.
pub fn convertPointToBase(&self, point: CGPoint) -> CGPoint
pub fn convertPointFromBase(&self, point: CGPoint) -> CGPoint
pub fn convertSizeToBase(&self, size: CGSize) -> CGSize
pub fn convertSizeFromBase(&self, size: CGSize) -> CGSize
pub fn convertRectToBase(&self, rect: CGRect) -> CGRect
pub fn convertRectFromBase(&self, rect: CGRect) -> CGRect
pub fn performMnemonic(&self, string: &NSString) -> bool
This has always returned NO and had no effect on macOS
pub fn shouldDrawColor(&self) -> bool
This method no longer does anything
pub fn gState(&self) -> isize
pub fn allocateGState(&self)
pub fn setUpGState(&self)
pub fn renewGState(&self)
Methods from Deref<Target = NSResponder>§
Sourcepub unsafe fn nextResponder(&self) -> Option<Retained<NSResponder>>
pub unsafe fn nextResponder(&self) -> Option<Retained<NSResponder>>
§Safety
This is not retained internally, you must ensure the object is still alive.
Sourcepub unsafe fn setNextResponder(&self, next_responder: Option<&NSResponder>)
pub unsafe fn setNextResponder(&self, next_responder: Option<&NSResponder>)
Setter for nextResponder.
§Safety
This is unretained, you must ensure the object is kept alive while in use.
Sourcepub unsafe fn tryToPerform_with(
&self,
action: Sel,
object: Option<&AnyObject>,
) -> bool
pub unsafe fn tryToPerform_with( &self, action: Sel, object: Option<&AnyObject>, ) -> bool
§Safety
actionmust be a valid selector.objectshould be of the correct type.
pub fn performKeyEquivalent(&self, event: &NSEvent) -> bool
pub fn validRequestorForSendType_returnType( &self, send_type: Option<&NSString>, return_type: Option<&NSString>, ) -> Option<Retained<AnyObject>>
pub fn mouseDown(&self, event: &NSEvent)
pub fn rightMouseDown(&self, event: &NSEvent)
pub fn otherMouseDown(&self, event: &NSEvent)
pub fn mouseUp(&self, event: &NSEvent)
pub fn rightMouseUp(&self, event: &NSEvent)
pub fn otherMouseUp(&self, event: &NSEvent)
pub fn mouseMoved(&self, event: &NSEvent)
pub fn mouseDragged(&self, event: &NSEvent)
pub fn mouseCancelled(&self, event: &NSEvent)
pub fn scrollWheel(&self, event: &NSEvent)
pub fn rightMouseDragged(&self, event: &NSEvent)
pub fn otherMouseDragged(&self, event: &NSEvent)
pub fn mouseEntered(&self, event: &NSEvent)
pub fn mouseExited(&self, event: &NSEvent)
pub fn keyDown(&self, event: &NSEvent)
pub fn keyUp(&self, event: &NSEvent)
pub fn flagsChanged(&self, event: &NSEvent)
pub fn tabletPoint(&self, event: &NSEvent)
pub fn tabletProximity(&self, event: &NSEvent)
pub fn cursorUpdate(&self, event: &NSEvent)
pub fn magnifyWithEvent(&self, event: &NSEvent)
pub fn rotateWithEvent(&self, event: &NSEvent)
pub fn swipeWithEvent(&self, event: &NSEvent)
pub fn beginGestureWithEvent(&self, event: &NSEvent)
pub fn endGestureWithEvent(&self, event: &NSEvent)
pub fn smartMagnifyWithEvent(&self, event: &NSEvent)
pub fn changeModeWithEvent(&self, event: &NSEvent)
pub fn touchesBeganWithEvent(&self, event: &NSEvent)
pub fn touchesMovedWithEvent(&self, event: &NSEvent)
pub fn touchesEndedWithEvent(&self, event: &NSEvent)
pub fn touchesCancelledWithEvent(&self, event: &NSEvent)
pub fn quickLookWithEvent(&self, event: &NSEvent)
pub fn pressureChangeWithEvent(&self, event: &NSEvent)
Sourcepub fn contextMenuKeyDown(&self, event: &NSEvent)
pub fn contextMenuKeyDown(&self, event: &NSEvent)
Handle a key event that should present a context menu at the user focus.
Most applications should not override this method. Instead, you should customize the context menu displayed from a keyboard event by implementing menuForEvent: and selectionAnchorRect, or showContextMenuForSelection:, rather than this method.
You should only override this method when you do not want the system-provided default behavior for the context menu hotkey, either for a specific key combination, or for the hotkey in general. For example, if your application already provides a different behavior for control-Return (the default context menu hotkey definition), and you want to preserve that behavior, you should override this method to handle that specific key combination, and then return without calling super. Note that the user may customize the hotkey to a different key combination, so in this example, if any other key combination is passed to your method, you would call super.
An implementation of this method should call [super contextMenuKeyDown:event] to pass the request up the responder chain. If the message reaches the application object, NSApplication’s implementation of this method will send showContextMenuForSelection: to the responder chain. If you do not call super, then no further handling of the key event will be performed.
Note: In some cases, showContextMenuForSelection: will be called without a prior call to contextMenuKeyDown:. This occurs when a view receives an Accessibility ShowMenu action, or when the user has created a Cocoa Text key binding to map a different key combination to the showContextMenuForSelection: action.
Parameter event: The key down event that matches the system-wide context menu hotkey combination.
See also: showContextMenuForSelection:
Sourcepub unsafe fn noResponderFor(&self, event_selector: Sel)
pub unsafe fn noResponderFor(&self, event_selector: Sel)
§Safety
event_selector must be a valid selector.
pub fn acceptsFirstResponder(&self) -> bool
pub fn becomeFirstResponder(&self) -> bool
pub fn resignFirstResponder(&self) -> bool
pub fn interpretKeyEvents(&self, event_array: &NSArray<NSEvent>)
pub fn flushBufferedKeyEvents(&self)
Sourcepub unsafe fn showContextHelp(&self, sender: Option<&AnyObject>)
pub unsafe fn showContextHelp(&self, sender: Option<&AnyObject>)
§Safety
sender should be of the correct type.
pub fn helpRequested(&self, event_ptr: &NSEvent)
pub fn shouldBeTreatedAsInkEvent(&self, event: &NSEvent) -> bool
pub fn wantsScrollEventsForSwipeTrackingOnAxis( &self, axis: NSEventGestureAxis, ) -> bool
pub fn wantsForwardedScrollEventsForAxis( &self, axis: NSEventGestureAxis, ) -> bool
Sourcepub unsafe fn supplementalTargetForAction_sender(
&self,
action: Sel,
sender: Option<&AnyObject>,
) -> Option<Retained<AnyObject>>
pub unsafe fn supplementalTargetForAction_sender( &self, action: Sel, sender: Option<&AnyObject>, ) -> Option<Retained<AnyObject>>
§Safety
actionmust be a valid selector.sendershould be of the correct type.
pub fn undoManager(&self) -> Option<Retained<NSUndoManager>>
pub fn validateProposedFirstResponder_forEvent( &self, responder: &NSResponder, event: Option<&NSEvent>, ) -> bool
Sourcepub unsafe fn presentError_modalForWindow_delegate_didPresentSelector_contextInfo(
&self,
error: &NSError,
window: &NSWindow,
delegate: Option<&AnyObject>,
did_present_selector: Option<Sel>,
context_info: *mut c_void,
)
pub unsafe fn presentError_modalForWindow_delegate_didPresentSelector_contextInfo( &self, error: &NSError, window: &NSWindow, delegate: Option<&AnyObject>, did_present_selector: Option<Sel>, context_info: *mut c_void, )
§Safety
delegateshould be of the correct type.did_present_selectormust be a valid selector.context_infomust be a valid pointer or null.
pub fn presentError(&self, error: &NSError) -> bool
pub fn willPresentError(&self, error: &NSError) -> Retained<NSError>
Sourcepub unsafe fn performTextFinderAction(&self, sender: Option<&AnyObject>)
pub unsafe fn performTextFinderAction(&self, sender: Option<&AnyObject>)
§Safety
sender should be of the correct type.
Sourcepub unsafe fn newWindowForTab(&self, sender: Option<&AnyObject>)
pub unsafe fn newWindowForTab(&self, sender: Option<&AnyObject>)
§Safety
sender should be of the correct type.
Sourcepub unsafe fn showWritingTools(&self, sender: Option<&AnyObject>)
pub unsafe fn showWritingTools(&self, sender: Option<&AnyObject>)
§Safety
sender should be of the correct type.
pub fn performMnemonic(&self, string: &NSString) -> bool
This has always returned NO and had no effect on macOS
Methods from Deref<Target = NSObject>§
Sourcepub fn doesNotRecognizeSelector(&self, sel: Sel) -> !
pub fn doesNotRecognizeSelector(&self, sel: Sel) -> !
Handle messages the object doesn’t recognize.
See Apple’s documentation for details.
Methods from Deref<Target = AnyObject>§
Sourcepub fn class(&self) -> &'static AnyClass
pub fn class(&self) -> &'static AnyClass
Dynamically find the class of this object.
§Panics
May panic if the object is invalid (which may be the case for objects
returned from unavailable init/new methods).
§Example
Check that an instance of NSObject has the precise class NSObject.
use objc2::ClassType;
use objc2::runtime::NSObject;
let obj = NSObject::new();
assert_eq!(obj.class(), NSObject::class());Sourcepub unsafe fn get_ivar<T>(&self, name: &str) -> &Twhere
T: Encode,
👎Deprecated: this is difficult to use correctly, use Ivar::load instead.
pub unsafe fn get_ivar<T>(&self, name: &str) -> &Twhere
T: Encode,
this is difficult to use correctly, use Ivar::load instead.
Use Ivar::load instead.
§Safety
The object must have an instance variable with the given name, and it
must be of type T.
See Ivar::load_ptr for details surrounding this.
Sourcepub fn downcast_ref<T>(&self) -> Option<&T>where
T: DowncastTarget,
pub fn downcast_ref<T>(&self) -> Option<&T>where
T: DowncastTarget,
Attempt to downcast the object to a class of type T.
This is the reference-variant. Use Retained::downcast if you want
to convert a retained object to another type.
§Mutable classes
Some classes have immutable and mutable variants, such as NSString
and NSMutableString.
When some Objective-C API signature says it gives you an immutable class, it generally expects you to not mutate that, even though it may technically be mutable “under the hood”.
So using this method to convert a NSString to a NSMutableString,
while not unsound, is generally frowned upon unless you created the
string yourself, or the API explicitly documents the string to be
mutable.
See Apple’s documentation on mutability and on
isKindOfClass: for more details.
§Generic classes
Objective-C generics are called “lightweight generics”, and that’s because they aren’t exposed in the runtime. This makes it impossible to safely downcast to generic collections, so this is disallowed by this method.
You can, however, safely downcast to generic collections where all the
type-parameters are AnyObject.
§Panics
This works internally by calling isKindOfClass:. That means that the
object must have the instance method of that name, and an exception
will be thrown (if CoreFoundation is linked) or the process will abort
if that is not the case. In the vast majority of cases, you don’t need
to worry about this, since both root objects NSObject and
NSProxy implement this method.
§Examples
Cast an NSString back and forth from NSObject.
use objc2::rc::Retained;
use objc2_foundation::{NSObject, NSString};
let obj: Retained<NSObject> = NSString::new().into_super();
let string = obj.downcast_ref::<NSString>().unwrap();
// Or with `downcast`, if we do not need the object afterwards
let string = obj.downcast::<NSString>().unwrap();Try (and fail) to cast an NSObject to an NSString.
use objc2_foundation::{NSObject, NSString};
let obj = NSObject::new();
assert!(obj.downcast_ref::<NSString>().is_none());Try to cast to an array of strings.
use objc2_foundation::{NSArray, NSObject, NSString};
let arr = NSArray::from_retained_slice(&[NSObject::new()]);
// This is invalid and doesn't type check.
let arr = arr.downcast_ref::<NSArray<NSString>>();This fails to compile, since it would require enumerating over the array to ensure that each element is of the desired type, which is a performance pitfall.
Downcast when processing each element instead.
use objc2_foundation::{NSArray, NSObject, NSString};
let arr = NSArray::from_retained_slice(&[NSObject::new()]);
for elem in arr {
if let Some(data) = elem.downcast_ref::<NSString>() {
// handle `data`
}
}Trait Implementations§
Source§impl AsRef<AnyObject> for BrowserViewMac
impl AsRef<AnyObject> for BrowserViewMac
Source§impl AsRef<BrowserViewMac> for BrowserViewMac
impl AsRef<BrowserViewMac> for BrowserViewMac
Source§impl AsRef<NSObject> for BrowserViewMac
impl AsRef<NSObject> for BrowserViewMac
Source§impl AsRef<NSResponder> for BrowserViewMac
impl AsRef<NSResponder> for BrowserViewMac
Source§fn as_ref(&self) -> &NSResponder
fn as_ref(&self) -> &NSResponder
Source§impl AsRef<NSView> for BrowserViewMac
impl AsRef<NSView> for BrowserViewMac
Source§impl Borrow<AnyObject> for BrowserViewMac
impl Borrow<AnyObject> for BrowserViewMac
Source§impl Borrow<NSObject> for BrowserViewMac
impl Borrow<NSObject> for BrowserViewMac
Source§impl Borrow<NSResponder> for BrowserViewMac
impl Borrow<NSResponder> for BrowserViewMac
Source§fn borrow(&self) -> &NSResponder
fn borrow(&self) -> &NSResponder
Source§impl Borrow<NSView> for BrowserViewMac
impl Borrow<NSView> for BrowserViewMac
Source§impl ClassType for BrowserViewMac
impl ClassType for BrowserViewMac
Source§const NAME: &'static str = "BrowserViewMac"
const NAME: &'static str = "BrowserViewMac"
Source§type ThreadKind = dyn MainThreadOnly
type ThreadKind = dyn MainThreadOnly
Source§impl DefinedClass for BrowserViewMac
impl DefinedClass for BrowserViewMac
Source§impl Deref for BrowserViewMac
impl Deref for BrowserViewMac
Source§impl Message for BrowserViewMac
impl Message for BrowserViewMac
Source§impl NSTextInputClient for BrowserViewMac
impl NSTextInputClient for BrowserViewMac
Source§unsafe fn insertText_replacementRange(
&self,
string: &AnyObject,
replacement_range: NSRange,
)
unsafe fn insertText_replacementRange( &self, string: &AnyObject, replacement_range: NSRange, )
Source§unsafe fn doCommandBySelector(&self, selector: Sel)
unsafe fn doCommandBySelector(&self, selector: Sel)
Source§unsafe fn setMarkedText_selectedRange_replacementRange(
&self,
string: &AnyObject,
selected_range: NSRange,
replacement_range: NSRange,
)
unsafe fn setMarkedText_selectedRange_replacementRange( &self, string: &AnyObject, selected_range: NSRange, replacement_range: NSRange, )
fn unmarkText(&self)
fn selectedRange(&self) -> NSRange
fn markedRange(&self) -> NSRange
fn hasMarkedText(&self) -> bool
Source§unsafe fn attributedSubstringForProposedRange_actualRange(
&self,
range: NSRange,
actual_range: *mut NSRange,
) -> Option<Retained<NSAttributedString>>
unsafe fn attributedSubstringForProposedRange_actualRange( &self, range: NSRange, actual_range: *mut NSRange, ) -> Option<Retained<NSAttributedString>>
fn validAttributesForMarkedText(&self) -> Retained<NSArray<NSString>>
Source§unsafe fn firstRectForCharacterRange_actualRange(
&self,
range: NSRange,
actual_range: *mut NSRange,
) -> CGRect
unsafe fn firstRectForCharacterRange_actualRange( &self, range: NSRange, actual_range: *mut NSRange, ) -> CGRect
fn characterIndexForPoint(&self, point: CGPoint) -> usize
fn attributedString(&self) -> Retained<NSAttributedString>
fn windowLevel(&self) -> isize
fn drawsVerticallyForCharacterAtIndex(&self, char_index: usize) -> bool
fn preferredTextAccessoryPlacement(&self) -> NSTextCursorAccessoryPlacement
fn unionRectInVisibleSelectedRange(&self) -> CGRect
fn documentVisibleRect(&self) -> CGRect
fn supportsAdaptiveImageGlyph(&self) -> bool
Source§impl RefEncode for BrowserViewMac
impl RefEncode for BrowserViewMac
Source§const ENCODING_REF: Encoding = <NSView as ::objc2::RefEncode>::ENCODING_REF
const ENCODING_REF: Encoding = <NSView as ::objc2::RefEncode>::ENCODING_REF
impl DowncastTarget for BrowserViewMac
Auto Trait Implementations§
impl !Freeze for BrowserViewMac
impl !RefUnwindSafe for BrowserViewMac
impl !Send for BrowserViewMac
impl !Sync for BrowserViewMac
impl !Unpin for BrowserViewMac
impl UnsafeUnpin for BrowserViewMac
impl !UnwindSafe for BrowserViewMac
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<'a, T> MainThreadOnly for T
impl<'a, T> MainThreadOnly for T
Source§fn mtm(&self) -> MainThreadMarker
fn mtm(&self) -> MainThreadMarker
MainThreadMarker from the main-thread-only object. Read more