1
0
Fork 0
baseview/Cargo.toml

43 lines
1.3 KiB
TOML
Raw Normal View History

2020-05-26 04:04:48 +10:00
[package]
name = "baseview"
version = "0.1.0"
2020-05-26 05:35:33 +10:00
authors = [
"William Light <git@wrl.lhiaudio.com>",
2020-05-26 06:24:16 +10:00
"Charles Saracco <crsaracco@gmail.com>",
2020-05-26 07:14:42 +10:00
"Mirko Covizzi <mrkcvzz@gmail.com>",
"Micah Johnston <micah@glowcoil.com>",
"Billy Messenger <billydm@protonmail.com>",
macOS: basic event handling (#52) * macOS: add basic event handling * macos: don't store subview pointer in WindowHandle * macOS: mention inspiration from antonok's vst_window crate, clean up * Add Anton Lazarev and myself to author list * macOS: fix event handling issues - Rename EventDelegate to WindowState - Make Window.ns_window optional, only set it if parentless - Put our own NSView subclass in Window.ns_view - Don't create useless "intermediate" NSView in parentless mode * macOS: use Arc::from_raw in WindowHandler dealloc fn * macOS: move subview code own file, handle more mouse events * macOS: add (non-tested) support for AsIfParented window * macOS: rename subview module to view * macOS: rename "mouse_click_extern_fn!" to "mouse_button_extern_fn!" This avoids confusion with the click event * macOS: make WindowState Arc wrapping code clearer * macOS: handle basic key press and release events * macOS: accept mouseMoved events, don't trigger them on clicks * macOS: fix cursor movement location conversion * macOS: add WindowState.trigger_event fn, make fields private * macOS: in view, set preservesContentInLiveResize to NO * macOS: add NSTrackingArea, cursor enter/exit events, better window init * macOS: remove unused WindowState.size field * macOS: acceptFirstMouse = YES in view * macOS: rename macro mouse_button_extern_fn to mouse_simple_extern_fn * macOS: remove key event handling, it will be implemented differently * macOS: trigger CursorMoved on right and middle mouse drag * macOS: run NSEvent.setMouseCoalescingEnabled(NO) * macOS: clean up * macOS: non-parented mode: don't "activate ignoring other apps" This is rarely necessary according to https://developer.apple.com/documentation/appkit/nsapplication/1428468-activate and I don't see any reason why we would need to do it. * macOS: call NSApp() before doing more work in non-parented mode * macOS: don't attempt to declare NSView subclass multiple times * macOS: add random suffix to name of NSView subclass to prevent issues * macOS: send tracking area options as a usize (objc UInt) * macOS: use UUID for class name suffix * macOS: fix view_will_move_to_window super call * macOS: drop WindowState when our NSView is released * macOS: in Window::open, autorelease an NSString that was allocated * macOS: delete our view class when the view is released * Upgrade cocoa dependency to version 0.24.0 * macOS: reorder some code in view.rs * macOS: mark WindowState::from_field as unsafe, update doc comment * macOS: in HasRawWindowHandle impl, use unwrap_or for ns_window
2020-11-12 09:04:40 +11:00
"Anton Lazarev <https://antonok.com>",
"Joakim Frostegård <joakim.frostegard@gmail.com>",
"Robbert van der Helm <mail@robbertvanderhelm.nl>",
2020-05-26 05:35:33 +10:00
]
2020-05-26 04:04:48 +10:00
edition = "2018"
license = "MIT OR Apache-2.0"
2020-05-26 04:04:48 +10:00
[features]
default = []
opengl = ["uuid", "x11/glx"]
2020-05-26 04:04:48 +10:00
[dependencies]
2022-02-07 10:58:11 +11:00
keyboard-types = { version = "0.6.1", default-features = false }
raw-window-handle = "0.5"
2020-05-26 05:35:33 +10:00
[target.'cfg(target_os="linux")'.dependencies]
xcb = { version = "0.9", features = ["thread", "xlib_xcb", "dri2"] }
x11 = { version = "2.18", features = ["xlib", "xcursor"] }
xcb-util = { version = "0.3", features = ["icccm"] }
2022-02-07 10:58:11 +11:00
nix = "0.22.0"
2020-05-26 05:35:33 +10:00
2020-05-26 06:24:16 +10:00
[target.'cfg(target_os="windows")'.dependencies]
2020-06-16 07:02:39 +10:00
winapi = { version = "0.3.8", features = ["libloaderapi", "winuser", "windef", "minwindef", "guiddef", "combaseapi", "wingdi", "errhandlingapi"] }
uuid = { version = "0.8", features = ["v4"], optional = true }
2020-05-26 05:35:33 +10:00
2020-05-26 07:14:42 +10:00
[target.'cfg(target_os="macos")'.dependencies]
macOS: basic event handling (#52) * macOS: add basic event handling * macos: don't store subview pointer in WindowHandle * macOS: mention inspiration from antonok's vst_window crate, clean up * Add Anton Lazarev and myself to author list * macOS: fix event handling issues - Rename EventDelegate to WindowState - Make Window.ns_window optional, only set it if parentless - Put our own NSView subclass in Window.ns_view - Don't create useless "intermediate" NSView in parentless mode * macOS: use Arc::from_raw in WindowHandler dealloc fn * macOS: move subview code own file, handle more mouse events * macOS: add (non-tested) support for AsIfParented window * macOS: rename subview module to view * macOS: rename "mouse_click_extern_fn!" to "mouse_button_extern_fn!" This avoids confusion with the click event * macOS: make WindowState Arc wrapping code clearer * macOS: handle basic key press and release events * macOS: accept mouseMoved events, don't trigger them on clicks * macOS: fix cursor movement location conversion * macOS: add WindowState.trigger_event fn, make fields private * macOS: in view, set preservesContentInLiveResize to NO * macOS: add NSTrackingArea, cursor enter/exit events, better window init * macOS: remove unused WindowState.size field * macOS: acceptFirstMouse = YES in view * macOS: rename macro mouse_button_extern_fn to mouse_simple_extern_fn * macOS: remove key event handling, it will be implemented differently * macOS: trigger CursorMoved on right and middle mouse drag * macOS: run NSEvent.setMouseCoalescingEnabled(NO) * macOS: clean up * macOS: non-parented mode: don't "activate ignoring other apps" This is rarely necessary according to https://developer.apple.com/documentation/appkit/nsapplication/1428468-activate and I don't see any reason why we would need to do it. * macOS: call NSApp() before doing more work in non-parented mode * macOS: don't attempt to declare NSView subclass multiple times * macOS: add random suffix to name of NSView subclass to prevent issues * macOS: send tracking area options as a usize (objc UInt) * macOS: use UUID for class name suffix * macOS: fix view_will_move_to_window super call * macOS: drop WindowState when our NSView is released * macOS: in Window::open, autorelease an NSString that was allocated * macOS: delete our view class when the view is released * Upgrade cocoa dependency to version 0.24.0 * macOS: reorder some code in view.rs * macOS: mark WindowState::from_field as unsafe, update doc comment * macOS: in HasRawWindowHandle impl, use unwrap_or for ns_window
2020-11-12 09:04:40 +11:00
cocoa = "0.24.0"
core-foundation = "0.9.1"
2020-05-26 07:14:42 +10:00
objc = "0.2.7"
2020-12-09 11:37:17 +11:00
uuid = { version = "0.8", features = ["v4"] }
[dev-dependencies]
rtrb = "0.2"