|
| 1 | +## 0.5.0 |
| 2 | + |
| 3 | +* `Window::set_ignore_mouse_events(ignore, forward)` takes a second argument |
| 4 | + and returns whether the native policy was applied: macOS, Windows and X11 can |
| 5 | + forward hover movement while clicks pass through, and Linux implements |
| 6 | + pass-through. `is_mouse_move_forwarding_enabled` and |
| 7 | + `is_mouse_move_forwarding_supported` inspect forwarding. **Breaking.** |
| 8 | +* `ApplicationEvent::QuitRequested` carries an `EventRequestRef`, and the new |
| 9 | + `WindowEvent::CloseRequested` one too: `cancel` it, or `defer` it into an |
| 10 | + `EventDecision` to `accept` or `cancel` later. `Window::close` asks the |
| 11 | + listeners first; `Window::is_close_supported` says whether it applies. |
| 12 | + **Breaking** for code matching `QuitRequested` without fields. |
| 13 | +* `Window::add_listener` and `remove_listener`: listeners on one window. |
| 14 | +* `WindowEvent::PropertyChanged` with `WindowProperty`: a window's title, |
| 15 | + resizable / movable / minimizable / maximizable / full-screenable / closable |
| 16 | + state, control button visibility, always-on-top / on-bottom and title bar |
| 17 | + style report each change, whoever made it. |
| 18 | +* `Window::occlusion_state` and `WindowEvent::OcclusionChanged`: whether any |
| 19 | + part of a window can be seen. macOS uses the system's state, Windows computes |
| 20 | + it from the windows above, Linux knows only hidden and minimized windows. |
| 21 | +* `Window::set_maximize_button_bounds`: where a custom title bar draws its |
| 22 | + maximize button, so Windows 11 opens the snap layouts on it. |
| 23 | +* `Window::show_system_menu`: the native system window menu on Windows and |
| 24 | + supporting Linux window managers. |
| 25 | +* `Window::perform_title_bar_double_click`: the macOS title-bar double-click |
| 26 | + preference (Maximize, Minimize or None) for custom title bars; a hidden |
| 27 | + title bar's empty band on macOS performs it by itself. |
| 28 | +* `Window::set_content_protection` and `is_content_protected`: native capture |
| 29 | + policy on Windows and macOS. |
| 30 | +* `Window::set_corner_preference` and `WindowCornerPreference`: Windows 11's |
| 31 | + corner rounding policy. |
| 32 | +* `TrayIcon::with_identifier` and `identifier`: a persistent tray host name |
| 33 | + (the SNI ID on Linux, `autosaveName` on macOS). |
| 34 | +* Windows and Linux: `Window::set_focusable` and `set_non_activating` take |
| 35 | + effect; disabling focus releases a keyboard focus the window holds. |
| 36 | +* `Window::focus` is reliable, and `blur` hands the focus back to where it was. |
| 37 | +* Linux: window hooks and shortcuts shut down safely; X11 always-on-top state |
| 38 | + is read back from the window manager; one window ID on both GTK objects. |
| 39 | + |
1 | 40 | ## 0.4.1 |
2 | 41 |
|
3 | 42 | * `TrayIcon::set_content_view` and `content_view`: any `View` in place of the |
|
0 commit comments