Skip to content

Commit d692283

Browse files
committed
Update objc2 related crates
1 parent 46ed99b commit d692283

File tree

8 files changed

+211
-180
lines changed

8 files changed

+211
-180
lines changed

Cargo.lock

+72-30
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

platforms/macos/Cargo.toml

+4-3
Original file line numberDiff line numberDiff line change
@@ -18,14 +18,15 @@ default-target = "x86_64-apple-darwin"
1818
accesskit = { version = "0.17.1", path = "../../common" }
1919
accesskit_consumer = { version = "0.26.0", path = "../../consumer" }
2020
hashbrown = { version = "0.15", default-features = false, features = ["default-hasher"] }
21-
objc2 = "0.5.1"
22-
objc2-foundation = { version = "0.2.0", features = [
21+
objc2 = { version = "0.6", default-features = false }
22+
objc2-foundation = { version = "0.3", default-features = false, features = [
2323
"NSArray",
2424
"NSDictionary",
2525
"NSValue",
2626
"NSThread",
2727
] }
28-
objc2-app-kit = { version = "0.2.0", features = [
28+
objc2-app-kit = { version = "0.3", default-features = false, features = [
29+
"objc2-core-foundation",
2930
"NSAccessibility",
3031
"NSAccessibilityConstants",
3132
"NSAccessibilityElement",

platforms/macos/src/adapter.rs

+18-16
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ use accesskit::{
88
Tree as TreeData, TreeUpdate,
99
};
1010
use accesskit_consumer::{FilterResult, Tree};
11-
use objc2::rc::{Id, WeakId};
11+
use objc2::rc::{Retained, Weak};
1212
use objc2_app_kit::NSView;
1313
use objc2_foundation::{MainThreadMarker, NSArray, NSObject, NSPoint};
1414
use std::{ffi::c_void, ptr::null_mut, rc::Rc};
@@ -25,7 +25,7 @@ const PLACEHOLDER_ROOT_ID: NodeId = NodeId(0);
2525

2626
enum State {
2727
Inactive {
28-
view: WeakId<NSView>,
28+
view: Weak<NSView>,
2929
is_view_focused: bool,
3030
action_handler: Rc<dyn ActionHandlerNoMut>,
3131
mtm: MainThreadMarker,
@@ -62,8 +62,8 @@ impl Adapter {
6262
is_view_focused: bool,
6363
action_handler: impl 'static + ActionHandler,
6464
) -> Self {
65-
let view = unsafe { Id::retain(view as *mut NSView) }.unwrap();
66-
let view = WeakId::from_id(&view);
65+
let view = unsafe { Retained::retain(view as *mut NSView) }.unwrap();
66+
let view = Weak::from_retained(&view);
6767
let mtm = MainThreadMarker::new().unwrap();
6868
let state = State::Inactive {
6969
view,
@@ -202,20 +202,22 @@ impl Adapter {
202202
let state = tree.state();
203203
let node = state.root();
204204
let platform_nodes = if filter(&node) == FilterResult::Include {
205-
vec![Id::into_super(Id::into_super(
206-
context.get_or_create_platform_node(node.id()),
207-
))]
205+
vec![context
206+
.get_or_create_platform_node(node.id())
207+
.into_super()
208+
.into_super()]
208209
} else {
209210
node.filtered_children(filter)
210211
.map(|node| {
211-
Id::into_super(Id::into_super(
212-
context.get_or_create_platform_node(node.id()),
213-
))
212+
context
213+
.get_or_create_platform_node(node.id())
214+
.into_super()
215+
.into_super()
214216
})
215-
.collect::<Vec<Id<NSObject>>>()
217+
.collect::<Vec<Retained<NSObject>>>()
216218
};
217-
let array = NSArray::from_vec(platform_nodes);
218-
Id::autorelease_return(array)
219+
let array = NSArray::from_retained_slice(&platform_nodes);
220+
Retained::autorelease_return(array)
219221
}
220222

221223
pub fn focus<H: ActivationHandler + ?Sized>(
@@ -227,14 +229,14 @@ impl Adapter {
227229
let state = tree.state();
228230
if let Some(node) = state.focus() {
229231
if can_be_focused(&node) {
230-
return Id::autorelease_return(context.get_or_create_platform_node(node.id()))
232+
return Retained::autorelease_return(context.get_or_create_platform_node(node.id()))
231233
as *mut _;
232234
}
233235
}
234236
null_mut()
235237
}
236238

237-
fn weak_view(&self) -> &WeakId<NSView> {
239+
fn weak_view(&self) -> &Weak<NSView> {
238240
match &self.state {
239241
State::Inactive { view, .. } => view,
240242
State::Placeholder {
@@ -263,6 +265,6 @@ impl Adapter {
263265
let root = state.root();
264266
let point = from_ns_point(&view, &root, point);
265267
let node = root.node_at_point(point, &filter).unwrap_or(root);
266-
Id::autorelease_return(context.get_or_create_platform_node(node.id())) as *mut _
268+
Retained::autorelease_return(context.get_or_create_platform_node(node.id())) as *mut _
267269
}
268270
}

0 commit comments

Comments
 (0)