Skip to content

Commit

Permalink
chore(changelog): use grammatically correct sentences
Browse files Browse the repository at this point in the history
  • Loading branch information
kchibisov committed Mar 28, 2024
1 parent 24a53d1 commit b04c1c6
Showing 1 changed file with 67 additions and 91 deletions.
158 changes: 67 additions & 91 deletions src/changelog/unreleased.md
Original file line number Diff line number Diff line change
@@ -1,115 +1,91 @@
The sections should follow the order `Added`, `Changed`, `Deprecated`,
`Removed`, and `Fixed`. Platform specific changes should have their own
subsection, like `Wayland`. When API is initially added and implemented on a
multiple platforms, it's indicated with the `New API, implemnted on X11,
Wayland, and macOS`

The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).

## Unreleased

### Added

- `OwnedDisplayHandle` type for allowing safe display handle usage outside of
trivial cases
- `ApplicationHandler<T>` trait which mimics `Event<T>`
- `WindowBuilder::with_cursor` and `Window::set_cursor` which takes a
`CursorIcon` or `CustomCursor`
- `Sync` implementation for `EventLoopProxy<T: Send>`
- `Window::default_attributes` to get default `WindowAttributes`
- `EventLoop::builder` to get `EventLoopBuilder` without export
- `CustomCursor::from_rgba` to allow creating cursor images from RGBA data
- `CustomCursorExtWebSys::from_url` to allow loading cursor images from URLs
- `CustomCursorExtWebSys::from_animation` to allow creating animated cursors
from other `CustomCursor`s
- `{Active,}EventLoop::create_custom_cursor` to load custom cursor image sources
- `ActiveEventLoop::create_window` and `EventLoop::create_window`
- `CustomCursor` which could be set via `Window::set_cursor`, implemented on Windows, macOS, X11, Wayland, and Web

#### iOS

- Detection support for `PinchGesture`, `DoubleTapGesture`, and
`RotationGesture`
The sections should follow the order `Added`, `Changed`, `Deprecated`,
`Removed`, and `Fixed`.

#### macOS
Platform specific changed should be added to the end of the section and grouped
by platform name. Common API additions should have `, implemented` at the end
for platforms where the API was initially implemented. See the following example
on how to add them:

- Services menu
```md
### Added

#### Web
- Add `Window::turbo()`, implemented on X11, Wayland, and Web.
- On X11, add `Window::some_rare_api`
- On X11, add `Window::even_more_rare_api`
- On Wayland, add `Window::common_api`
- On Windows, add `Window::some_rare_api`
```

- Ability to toggle calling `Event.preventDefault()` on `Window`
## Unreleased

#### Windows
### Added

- `with_system_backdrop`, `with_border_color`, `with_title_background_color`,
`with_title_text_color`, and `with_corner_preference` on
- Add `OwnedDisplayHandle` type for allowing safe display handle usage outside of
trivial cases
- Add `ApplicationHandler<T>` trait which mimics `Event<T>`
- Add `WindowBuilder::with_cursor` and `Window::set_cursor` which takes a
Add `CursorIcon` or `CustomCursor`
- Add `Sync` implementation for `EventLoopProxy<T: Send>`
- Add `Window::default_attributes` to get default `WindowAttributes`
- Add `EventLoop::builder` to get `EventLoopBuilder` without export
- Add `CustomCursor::from_rgba` to allow creating cursor images from RGBA data
- Add `CustomCursorExtWebSys::from_url` to allow loading cursor images from URLs
- Add `CustomCursorExtWebSys::from_animation` to allow creating animated cursors
Add from other `CustomCursor`s
- Add `{Active,}EventLoop::create_custom_cursor` to load custom cursor image sources
- Add `ActiveEventLoop::create_window` and `EventLoop::create_window`
- Add `CustomCursor` which could be set via `Window::set_cursor`, implemented on
Windows, macOS, X11, Wayland, and Web
- On Web, add to toggle calling `Event.preventDefault()` on `Window`
- On iOS, add `PinchGesture`, `DoubleTapGesture`, and `RotationGesture`
- On macOS, add services menu.
- On Windows, add `with_title_text_color`, and `with_corner_preference` on
`WindowAttributesExtWindows`

### Changed

- Bump MSRV from `1.65` to `1.70`.
- Renamed `TouchpadMagnify` to `PinchGesture`
- Renamed `SmartMagnify` to `DoubleTapGesture`
- Renamed `TouchpadRotate` to `RotationGesture`
- Renamed `EventLoopWindowTarget` to `ActiveEventLoop`.
- Renamed `platform::x11::XWindowType` to `platform::x11::WindowType`.
- Renamed `VideoMode` to `VideoModeHandle` to represent that it doesn't hold
- Rename `TouchpadMagnify` to `PinchGesture`
- Rename `SmartMagnify` to `DoubleTapGesture`
- Rename `TouchpadRotate` to `RotationGesture`
- Rename `EventLoopWindowTarget` to `ActiveEventLoop`.
- Rename `platform::x11::XWindowType` to `platform::x11::WindowType`.
- Rename `VideoMode` to `VideoModeHandle` to represent that it doesn't hold
static data.
- Moved `dpi` types to its own crate, and re-export it from the root crate
- `log` has been replaced with `tracing`. The old behavior can be emulated by
setting the `log` feature on the `tracing` crate.
- Move `dpi` types to its own crate, and re-export it from the root crate
- Replace `log` with `tracing`, use `log` feature on `tracing` to restore old
behavior
- `EventLoop::with_user_event` now returns `EventLoopBuilder`

#### iOS

- Return `HandleError::Unavailable` when a window handle is not available

#### macOS

- Return `HandleError::Unavailable` when a window handle is not available
- On macOS, fix sequence of mouse events being out of order when dragging on the trackpad.

#### Web

- Return `HandleError::Unavailable` when a window handle is not available
- Return `RawWindowHandle::WebCanvas` instead of `RawWindowHandle::Web`

#### Windows

- Removed `WS_CAPTION`, `WS_BORDER`, and `WS_EX_WINDOWEDGE` styles for child
windows without decorations
- On Web, return `HandleError::Unavailable` when a window handle is not available
- On Web, return `RawWindowHandle::WebCanvas` instead of `RawWindowHandle::Web`
- On Web, remove queuing fullscreen request in absence of transient activation
- On iOS, return `HandleError::Unavailable` when a window handle is not available
- On macOS, return `HandleError::Unavailable` when a window handle is not available
- On Windows, remove `WS_CAPTION`, `WS_BORDER`, and `WS_EX_WINDOWEDGE` styles
for child windows without decorations

### Deprecated

- `EventLoop::run`, use `EventLoop::run_app`
- `EventLoopExtRunOnDemand::run_on_demand`, use `EventLoop::run_app_on_demand`
- `EventLoopExtPumpEvents::pump_events`, use `EventLoopExtPumpEvents::pump_app_events`
- `Window::set_cursor_icon`, use `Window::set_cursor`
- `Window::new`, use `ActiveEventLoop::create_window` and `EventLoop::create_window`
- Deprecate `EventLoop::run`, use `EventLoop::run_app`
- Deprecate `EventLoopExtRunOnDemand::run_on_demand`, use `EventLoop::run_app_on_demand`
- Deprecate `EventLoopExtPumpEvents::pump_events`, use `EventLoopExtPumpEvents::pump_app_events`
- Deprecate `Window::set_cursor_icon`, use `Window::set_cursor`

### Removed

- `Deref` implementation for `EventLoop` that gave `EventLoopWindowTarget`
- `WindowBuilder` in favor of `WindowAttributes`
- Generic parameter `T` from `ActiveEventLoop`
- `EventLoopBuilder::with_user_event`, use `EventLoop::with_user_event`
- Redundant `EventLoopError::AlreadyRunning`
- `WindowAttributes::fullscreen` and expose as field directly

#### Web

- Queuing fullscreen request in absence of transient activation

#### X11

- `platform::x11::XNotSupported` export
- Remove `Window::new`, use `ActiveEventLoop::create_window` and `EventLoop::create_window`
- Remove `Deref` implementation for `EventLoop` that gave `EventLoopWindowTarget`
- Remove `WindowBuilder` in favor of `WindowAttributes`
- Remove Generic parameter `T` from `ActiveEventLoop`
- Remove `EventLoopBuilder::with_user_event`, use `EventLoop::with_user_event`
- Remove Redundant `EventLoopError::AlreadyRunning`
- Remove `WindowAttributes::fullscreen` and expose as field directly
- On X11, remove `platform::x11::XNotSupported` export

### Fixed

#### Web

- Setting cursor icon overriding cursor visibility

#### Windows

- Confine cursor to center of window when grabbed and hidden
- On Web, fix setting cursor icon overriding cursor visibility
- On Windows, fix cursor not confined to center of window when grabbed and hidden
- On macOS, fix sequence of mouse events being out of order when dragging on the trackpad

0 comments on commit b04c1c6

Please sign in to comment.