Skip to content

Commit 165c163

Browse files
committed
Bump version on master
This commit does not represent a release and only synchronizes CHANGELOG from the latest release.
1 parent 0a59e4b commit 165c163

File tree

5 files changed

+249
-248
lines changed

5 files changed

+249
-248
lines changed

Cargo.toml

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -8,22 +8,22 @@ edition = "2024"
88
license = "Apache-2.0"
99
repository = "https://github.com/rust-windowing/winit"
1010
rust-version = "1.85"
11-
version = "0.30.12"
11+
version = "0.31.0-beta.1"
1212

1313
[workspace.dependencies]
1414
# Workspace dependencies.
1515
# `winit` has no version here to allow using it in dev deps for docs.
1616
winit = { path = "winit" }
17-
winit-android = { version = "0.30.12", path = "winit-android" }
18-
winit-appkit = { version = "0.30.12", path = "winit-appkit" }
19-
winit-common = { version = "0.30.12", path = "winit-common" }
20-
winit-core = { version = "0.30.12", path = "winit-core" }
21-
winit-orbital = { version = "0.30.12", path = "winit-orbital" }
22-
winit-uikit = { version = "0.30.12", path = "winit-uikit" }
23-
winit-wayland = { version = "0.30.12", path = "winit-wayland", default-features = false }
24-
winit-web = { version = "0.30.12", path = "winit-web" }
25-
winit-win32 = { version = "0.30.12", path = "winit-win32" }
26-
winit-x11 = { version = "0.30.12", path = "winit-x11" }
17+
winit-android = { version = "=0.31.0-beta.1", path = "winit-android" }
18+
winit-appkit = { version = "=0.31.0-beta.1", path = "winit-appkit" }
19+
winit-common = { version = "=0.31.0-beta.1", path = "winit-common" }
20+
winit-core = { version = "=0.31.0-beta.1", path = "winit-core" }
21+
winit-orbital = { version = "=0.31.0-beta.1", path = "winit-orbital" }
22+
winit-uikit = { version = "=0.31.0-beta.1", path = "winit-uikit" }
23+
winit-wayland = { version = "=0.31.0-beta.1", path = "winit-wayland", default-features = false }
24+
winit-web = { version = "=0.31.0-beta.1", path = "winit-web" }
25+
winit-win32 = { version = "=0.31.0-beta.1", path = "winit-win32" }
26+
winit-x11 = { version = "=0.31.0-beta.1", path = "winit-x11" }
2727

2828
# Core dependencies.
2929
bitflags = "2"

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88

99
```toml
1010
[dependencies]
11-
winit = "0.30.12"
11+
winit = "0.31.0-beta.1"
1212
```
1313

1414
## [Documentation](https://docs.rs/winit)

winit-android/src/lib.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -62,8 +62,8 @@
6262
//! If your application is currently based on `NativeActivity` via the `ndk-glue` crate and building
6363
//! with `cargo apk`, then the minimal changes would be:
6464
//! 1. Remove `ndk-glue` from your `Cargo.toml`
65-
//! 2. Enable the `"android-native-activity"` feature for Winit: `winit = { version = "0.30.12",
66-
//! features = [ "android-native-activity" ] }`
65+
//! 2. Enable the `"android-native-activity"` feature for Winit: `winit = { version =
66+
//! "0.31.0-beta.1", features = [ "android-native-activity" ] }`
6767
//! 3. Add an `android_main` entrypoint (as above), instead of using the '`[ndk_glue::main]` proc
6868
//! macro from `ndk-macros` (optionally add a dependency on `android_logger` and initialize
6969
//! logging as above).

winit/src/changelog/unreleased.md

Lines changed: 0 additions & 234 deletions
Original file line numberDiff line numberDiff line change
@@ -39,237 +39,3 @@ The migration guide could reference other migration examples in the current
3939
changelog entry.
4040

4141
## Unreleased
42-
43-
### Added
44-
45-
- Add `ActiveEventLoop::create_proxy()`.
46-
- On Web, add `ActiveEventLoopExtWeb::is_cursor_lock_raw()` to determine if
47-
`DeviceEvent::MouseMotion` is returning raw data, not OS accelerated, when using
48-
`CursorGrabMode::Locked`.
49-
- On Web, implement `MonitorHandle` and `VideoModeHandle`.
50-
51-
Without prompting the user for permission, only the current monitor is returned. But when
52-
prompting and being granted permission through
53-
`ActiveEventLoop::request_detailed_monitor_permission()`, access to all monitors and their
54-
details is available. Handles created with "detailed monitor permissions" can be used in
55-
`Window::set_fullscreen()` as well.
56-
57-
Keep in mind that handles do not auto-upgrade after permissions are granted and have to be
58-
re-created to make full use of this feature.
59-
- Implement `Clone`, `Copy`, `Debug`, `Deserialize`, `Eq`, `Hash`, `Ord`, `PartialEq`, `PartialOrd`
60-
and `Serialize` on many types.
61-
- Add `MonitorHandle::current_video_mode()`.
62-
- Add `ApplicationHandlerExtMacOS` trait, and a `macos_handler` method to `ApplicationHandler` which returns a `dyn ApplicationHandlerExtMacOS` which allows for macOS specific extensions to winit.
63-
- Add a `standard_key_binding` method to the `ApplicationHandlerExtMacOS` trait. This allows handling of standard keybindings such as "go to end of line" on macOS.
64-
- On macOS, add `WindowExtMacOS::set_unified_titlebar` and `WindowAttributesMacOS::with_unified_titlebar`
65-
to use a larger style of titlebar.
66-
- Add `WindowId::into_raw()` and `from_raw()`.
67-
- Add `PointerKind`, `PointerSource`, `ButtonSource`, `FingerId`, `primary` and `position` to all
68-
pointer events as part of the pointer event overhaul.
69-
- Add `DeviceId::into_raw()` and `from_raw()`.
70-
- Added `Window::surface_position`, which is the position of the surface inside the window.
71-
- Added `Window::safe_area`, which describes the area of the surface that is unobstructed.
72-
- On X11, Wayland, Windows and macOS, improved scancode conversions for more obscure key codes.
73-
- Add ability to make non-activating window on macOS using `NSPanel` with `NSWindowStyleMask::NonactivatingPanel`.
74-
- Implement `MonitorHandleProvider` for `MonitorHandle` to access common monitor API.
75-
- On X11, set an "area" attribute on XIM input connection to convey the cursor area.
76-
- Implement `CustomCursorProvider` for `CustomCursor` to access cursor API.
77-
- Add `CustomCursorSource::Url`, `CustomCursorSource::from_animation`.
78-
- Implement `CustomIconProvider` for `RgbaIcon`.
79-
- Add `icon` module that exposes winit's icon API.
80-
- `VideoMode::new` to create a `VideoMode`.
81-
- `keyboard::ModifiersKey` to track which modifier is exactly pressed.
82-
- `ActivationToken::as_raw` to get a ref to raw token.
83-
- Each platform now has corresponding `WindowAttributes` struct instead of trait extension.
84-
- On Wayland, added implementation for `Window::set_window_icon`
85-
- On Wayland, added `PanGesture`, `PinchGesture`, and `RotationGesture`
86-
- Add `Window::request_ime_update` to atomically apply set of IME changes.
87-
- Add `Ime::DeleteSurrounding` to let the input method delete text.
88-
- Add more `ImePurpose` values.
89-
- Add `ImeHints` to request particular IME behaviour.
90-
- Add Pen input support on Wayland, Windows, and Web via new Pointer event.
91-
92-
### Changed
93-
94-
- Change `ActiveEventLoop` and `Window` to be traits, and added `cast_ref`/`cast_mut`/`cast`
95-
methods to extract the backend type from those.
96-
- `ActiveEventLoop::create_window` now returns `Box<dyn Window>`.
97-
- `ApplicationHandler` now uses `dyn ActiveEventLoop`.
98-
- On Web, let events wake up event loop immediately when using `ControlFlow::Poll`.
99-
- Bump MSRV from `1.70` to `1.85`.
100-
- Changed `ApplicationHandler::user_event` to `user_wake_up`, removing the
101-
generic user event.
102-
103-
Winit will now only indicate that wake up happened, you will have to pair
104-
this with an external mechanism like `std::sync::mpsc::channel` if you want
105-
to send specific data to be processed on the main thread.
106-
- Changed `EventLoopProxy::send_event` to `EventLoopProxy::wake_up`, it now
107-
only wakes up the loop.
108-
- On X11, implement smooth resizing through the sync extension API.
109-
- `ApplicationHandler::can_create|destroy_surfaces()` was split off from
110-
`ApplicationHandler::resumed/suspended()`.
111-
112-
`ApplicationHandler::can_create_surfaces()` should, for portability reasons
113-
to Android, be the only place to create render surfaces.
114-
115-
`ApplicationHandler::resumed/suspended()` are now only emitted by iOS, Web
116-
and Android, and now signify actually resuming/suspending the application.
117-
- Rename `platform::web::*ExtWebSys` to `*ExtWeb`.
118-
- Change signature of `EventLoop::run_app`, `EventLoopExtPumpEvents::pump_app_events` and
119-
`EventLoopExtRunOnDemand::run_app_on_demand` to accept a `impl ApplicationHandler` directly,
120-
instead of requiring a `&mut` reference to it.
121-
- On Web, `Window::canvas()` now returns a reference.
122-
- On Web, `CursorGrabMode::Locked` now lets `DeviceEvent::MouseMotion` return raw data, not OS
123-
accelerated, if the browser supports it.
124-
- `(Active)EventLoop::create_custom_cursor()` now returns a `Result<CustomCursor, ExternalError>`.
125-
- Changed how `ModifiersState` is serialized by Serde.
126-
- `VideoModeHandle::refresh_rate_millihertz()` and `bit_depth()` now return a `Option<NonZero*>`.
127-
- `MonitorHandle::position()` now returns an `Option`.
128-
- On macOS, remove custom application delegates. You are now allowed to override the
129-
application delegate yourself.
130-
- On X11, remove our dependency on libXcursor. (#3749)
131-
- Renamed the following APIs to make it clearer that the sizes apply to the underlying surface:
132-
- `WindowEvent::Resized` to `SurfaceResized`.
133-
- `InnerSizeWriter` to `SurfaceSizeWriter`.
134-
- `WindowAttributes.inner_size` to `surface_size`.
135-
- `WindowAttributes.min_inner_size` to `min_surface_size`.
136-
- `WindowAttributes.max_inner_size` to `max_surface_size`.
137-
- `WindowAttributes.resize_increments` to `surface_resize_increments`.
138-
- `WindowAttributes::with_inner_size` to `with_surface_size`.
139-
- `WindowAttributes::with_min_inner_size` to `with_min_surface_size`.
140-
- `WindowAttributes::with_max_inner_size` to `with_max_surface_size`.
141-
- `WindowAttributes::with_resize_increments` to `with_surface_resize_increments`.
142-
- `Window::inner_size` to `surface_size`.
143-
- `Window::request_inner_size` to `request_surface_size`.
144-
- `Window::set_min_inner_size` to `set_min_surface_size`.
145-
- `Window::set_max_inner_size` to `set_max_surface_size`.
146-
147-
To migrate, you can probably just replace all instances of `inner_size` with `surface_size` in your codebase.
148-
- Every event carrying a `DeviceId` now uses `Option<DeviceId>` instead. A `None` value signifies that the
149-
device can't be uniquely identified.
150-
- Pointer `WindowEvent`s were overhauled. The new events can handle any type of pointer, serving as
151-
a single pointer input source. Now your application can handle any pointer type without having to
152-
explicitly handle e.g. `Touch`:
153-
- Rename `CursorMoved` to `PointerMoved`.
154-
- Rename `CursorEntered` to `PointerEntered`.
155-
- Rename `CursorLeft` to `PointerLeft`.
156-
- Rename `MouseInput` to `PointerButton`.
157-
- Add `primary` to every `PointerEvent` as a way to identify discard non-primary pointers in a
158-
multi-touch interaction.
159-
- Add `position` to every `PointerEvent`.
160-
- `PointerMoved` is **not sent** after `PointerEntered` anymore.
161-
- Remove `Touch`, which is folded into the `Pointer*` events.
162-
- New `PointerKind` added to `PointerEntered` and `PointerLeft`, signifying which pointer type is
163-
the source of this event.
164-
- New `PointerSource` added to `PointerMoved`, similar to `PointerKind` but holding additional
165-
data.
166-
- New `ButtonSource` added to `PointerButton`, similar to `PointerKind` but holding pointer type
167-
specific buttons. Use `ButtonSource::mouse_button()` to easily normalize any pointer button
168-
type to a generic mouse button.
169-
- New `FingerId` added to `PointerKind::Touch` and `PointerSource::Touch` able to uniquely
170-
identify a finger in a multi-touch interaction. Replaces the old `Touch::id`.
171-
- In the same spirit rename `DeviceEvent::MouseMotion` to `PointerMotion`.
172-
- Remove `Force::Calibrated::altitude_angle`.
173-
- On X11, use bottom-right corner for IME hotspot in `Window::set_ime_cursor_area`.
174-
- On macOS and iOS, no longer emit `ScaleFactorChanged` upon window creation.
175-
- On macOS, no longer emit `Focused` upon window creation.
176-
- On iOS, emit more events immediately, instead of queuing them.
177-
- Update `smol_str` to version `0.3`
178-
- Rename `VideoModeHandle` to `VideoMode`, now it only stores plain data.
179-
- Make `Fullscreen::Exclusive` contain `(MonitorHandle, VideoMode)`.
180-
- Reworked the file drag-and-drop API.
181-
- On macOS, the default menu uses the bundle name or falls back to the process name as before.
182-
183-
The `WindowEvent::DroppedFile`, `WindowEvent::HoveredFile` and `WindowEvent::HoveredFileCancelled`
184-
events have been removed, and replaced with `WindowEvent::DragEntered`, `WindowEvent::DragMoved`,
185-
`WindowEvent::DragDropped` and `WindowEvent::DragLeft`.
186-
187-
The old drag-and-drop events were emitted once per file. This occurred when files were *first*
188-
hovered over the window, dropped, or left the window. The new drag-and-drop events are emitted
189-
once per set of files dragged, and include a list of all dragged files. They also include the
190-
pointer position.
191-
192-
The rough correspondence is:
193-
- `WindowEvent::HoveredFile` -> `WindowEvent::DragEntered`
194-
- `WindowEvent::DroppedFile` -> `WindowEvent::DragDropped`
195-
- `WindowEvent::HoveredFileCancelled` -> `WindowEvent::DragLeft`
196-
197-
The `WindowEvent::DragMoved` event is entirely new, and is emitted whenever the pointer moves
198-
whilst files are being dragged over the window. It doesn't contain any file paths, just the
199-
pointer position.
200-
- Updated `objc2` to `v0.6`.
201-
- Updated `windows-sys` to `v0.59`.
202-
- To match the corresponding changes in `windows-sys`, the `HWND`, `HMONITOR`, and `HMENU` types
203-
now alias to `*mut c_void` instead of `isize`.
204-
- Removed `KeyEventExtModifierSupplement`, and made the fields `text_with_all_modifiers` and
205-
`key_without_modifiers` public on `KeyEvent` instead.
206-
- Move `window::Fullscreen` to `monitor::Fullscreen`.
207-
- Renamed "super" key to "meta", to match the naming in the W3C specification.
208-
`NamedKey::Super` still exists, but it's non-functional and deprecated, `NamedKey::Meta` should be used instead.
209-
- Move `IconExtWindows` into `WinIcon`.
210-
- Move `EventLoopExtPumpEvents` and `PumpStatus` from platform module to `winit::event_loop::pump_events`.
211-
- Move `EventLoopExtRunOnDemand` from platform module to `winit::event_loop::run_on_demand`.
212-
- Use `NamedKey`, `Code` and `Location` from the `keyboard-types` v0.8 crate.
213-
- Deprecate `Window::set_ime_allowed`, `Window::set_ime_cursor_area`, and `Window::set_ime_purpose`.
214-
- `Force::normalized()` now takes a `Option<ToolAngle>` to calculate the perpendicular force.
215-
- On Windows, don't confine cursor to center of window when grabbed and hidden.
216-
217-
### Removed
218-
219-
- Remove `Event`.
220-
- Remove already deprecated APIs:
221-
- `EventLoop::create_window()`
222-
- `EventLoop::run`.
223-
- `EventLoopBuilder::new()`
224-
- `EventLoopExtPumpEvents::pump_events`.
225-
- `EventLoopExtRunOnDemand::run_on_demand`.
226-
- `VideoMode`
227-
- `WindowAttributes::new()`
228-
- `Window::set_cursor_icon()`
229-
- On iOS, remove `platform::ios::EventLoopExtIOS` and related `platform::ios::Idiom` type.
230-
231-
This feature was incomplete, and the equivalent functionality can be trivially achieved outside
232-
of `winit` using `objc2-ui-kit` and calling `UIDevice::currentDevice().userInterfaceIdiom()`.
233-
- On Web, remove unused `platform::web::CustomCursorError::Animation`.
234-
- Remove the `rwh_04` and `rwh_05` cargo feature and the corresponding `raw-window-handle` v0.4 and
235-
v0.5 support. v0.6 remains in place and is enabled by default.
236-
- Remove `DeviceEvent::Added` and `DeviceEvent::Removed`.
237-
- Remove `DeviceEvent::Motion` and `WindowEvent::AxisMotion`.
238-
- Remove `MonitorHandle::size()` and `refresh_rate_millihertz()` in favor of
239-
`MonitorHandle::current_video_mode()`.
240-
- On Android, remove all `MonitorHandle` support instead of emitting false data.
241-
- Remove `impl From<u64> for WindowId` and `impl From<WindowId> for u64`. Replaced with
242-
`WindowId::into_raw()` and `from_raw()`.
243-
- Remove `dummy()` from `WindowId` and `DeviceId`.
244-
- Remove `WindowEvent::Touch` and `Touch` in favor of the new `PointerKind`, `PointerSource` and
245-
`ButtonSource` as part of the new pointer event overhaul.
246-
- Remove `Force::altitude_angle`.
247-
- Remove `Window::inner_position`, use the new `Window::surface_position` instead.
248-
- Remove `CustomCursorExtWeb`, use the `CustomCursorSource`.
249-
- Remove `CustomCursor::from_rgba`, use `CustomCursorSource` instead.
250-
- Remove `ApplicationHandler::exited`, the event loop being shut down can now be listened to in
251-
the `Drop` impl on the application handler.
252-
- Remove `NamedKey::Space`, match on `Key::Character(" ")` instead.
253-
- Remove `PartialEq` impl for `WindowAttributes`.
254-
- `WindowAttributesExt*` platform extensions; use `WindowAttributes*` instead.
255-
- Remove `Force::Calibrated::altitude_angle` in favor of `ToolAngle::altitude`.
256-
257-
### Fixed
258-
259-
- On Orbital, `MonitorHandle::name()` now returns `None` instead of a dummy name.
260-
- On Orbital, implement `fullscreen`.
261-
- On iOS, fixed `SurfaceResized` and `Window::surface_size` not reporting the size of the actual surface.
262-
- On macOS, fixed the scancode conversion for audio volume keys.
263-
- On macOS, fixed the scancode conversion for `IntlBackslash`.
264-
- On macOS, fixed redundant `SurfaceResized` event at window creation.
265-
- On macOS, don't panic on monitors with unknown bit-depths.
266-
- On macOS, fixed crash when closing the window on macOS 26+.
267-
- On Windows, account for mouse wheel lines per scroll setting for `WindowEvent::MouseWheel`.
268-
- On Windows, `Window::theme` will return the correct theme after setting it through `Window::set_theme`.
269-
- On Windows, `Window::set_theme` will change the title bar color immediately now.
270-
- On Windows 11, prevent incorrect shifting when dragging window onto a monitor with different DPI.
271-
- On Windows, avoid returning `SurfaceResized` with size zero when an application is minimized. Let `Window::surface_size` return the pre-minimization window size even while minimized.
272-
- On Web, device events are emitted regardless of cursor type.
273-
- On Wayland, `axis_value120` scroll events now generate `MouseScrollDelta::LineDelta`
274-
- On X11, mouse scroll button events no longer cause duplicated `WindowEvent::MouseWheel` events.
275-
- On macOS, fixed crash when dragging non-file content onto window.

0 commit comments

Comments
 (0)