Commit Graph

1925 Commits

Author SHA1 Message Date
Kirill Chibisov
8e4ef92669 On macOS, fix backspace emission on preedit clear
Fixes: d15feb5cfa (On macOS, fix empty marked text)
2023-05-14 19:02:10 +03:00
Xiaopeng Li
5278441547 Fix device description leak (#2758)
* Fix device description leak

* Update CHANGELOG.md

---------

Co-authored-by: Xiaopeng Li <lixiaopeng.jetspark@bytedance.com>
2023-05-14 19:02:10 +03:00
Kirill Chibisov
870e6d1cb2 On macOS, fix key_up being ignored without IME
Fixes: d15feb5cfa (On macOS, fix empty marked text)
2023-05-06 20:42:05 +03:00
Kirill Chibisov
30678cbcef On Wayland, fix nightly warnings
The new analysis suggests that we can remove mut.
2023-05-04 17:00:41 +03:00
Kirill Chibisov
bb26b0355c On macOS, fix empty marked text blocking input
Fixes #2775.
2023-05-04 17:00:41 +03:00
Kirill Chibisov
6f97ff174b On X11, fix nightly warnings
The new analysis suggests that we can remove mut.
2023-05-04 17:00:41 +03:00
Amandus Søve Thorsrud
0881a28302 Run Window::set_ime_position on main thread on macOS
Fixes #2756.
2023-05-04 17:00:41 +03:00
Xiaopeng Li
d37dac8f39 Fix potential panic (#2755)
* Fix potential panic

* Update CHANGELOG.md

* Use checked_div

---------

Co-authored-by: Xiaopeng Li <lixiaopeng.jetspark@bytedance.com>
2023-05-04 17:00:41 +03:00
Mads Marquart
dec45bb09f Fix macos memory leaks (#2739)
* Use a weak reference from WinitView to WinitWindow

* Allow patched objc2 version

* Add changelog entry
2023-03-16 22:03:19 +03:00
Dylan Scott
68ed564def On macOS, resize simple fullscreen on window move
Fixes #1118.
2023-03-02 14:35:02 +03:00
Nicolas Mazzon
339d57b646 On Windows, check whether CoCreateInstance succeeds 2023-03-02 14:35:02 +03:00
Kirill Chibisov
2e4dafc9fe On macOS, fix initial focused state
The synthetic focused event was queued after the real event was send
leading to focused issues on startup.

Fixes #2695.
2023-03-02 14:35:02 +03:00
Kirill Chibisov
41e524f12c On Wayland, fix rounding issue in resizes 2023-03-02 14:35:02 +03:00
Simon Hausmann
644c47a6f8 Add support for Window::theme on the web (#2687) 2023-03-02 14:35:02 +03:00
Kirill Chibisov
0be08e574d On Wayland, fix rare crash on DPI change
While I don't understand the root cause for this issue, we can
dirty fix like that for now.
2023-03-02 14:35:02 +03:00
Kirill Chibisov
811cc5cdb7 On macOS, set resize increments only for live resize
Closes #2684 for macOS.
2023-03-02 14:35:02 +03:00
Sludge
230b37df56 Implement HasRawDisplayHandle for EventLoop (#2677)
* Implement `HasRawDisplayHandle` for `EventLoop`

* Add changelog entry
2023-03-02 14:35:02 +03:00
John Nunley
09bca59cf3 On Windows, name the waiter thread (#2672) 2023-03-02 14:35:02 +03:00
John Nunley
9fb8aaa6f4 Replace lazy window message ids with a slimmer version (#2598) 2023-03-02 14:35:02 +03:00
Kirill Chibisov
3e258a377f Fix window drop on Wayland
In some scenarious of window dropping the callback for keyboard
may run after the window was dropped.
2023-02-02 14:45:38 +03:00
Kirill Chibisov
3fd73848dd On macOS, fix Ime::Commit persisting
This commit clears the currently marked text on `Ime::Commit`, so
normal `ReceivedCharacter` input can continue.
2023-02-01 18:08:25 +03:00
Samuel
4e1c46fe9e Windows: Fix Alt key press entering menu loop (#2665) 2023-02-01 12:03:58 +01:00
Jack Wright
180a4c7a16 Add WindowExtMacOS::{set_,}option_as_alt
This adds an ability to control left and right `Option` keys to be
treated as `Alt`, thus not producing diacritical marks.

Co-authored-by: Kirill Chibisov <contact@kchibisov.com>
2023-01-31 12:35:49 +03:00
Kirill Chibisov
13613931cf Implement serde ser/deser for Theme 2023-01-31 12:14:15 +03:00
Lukas Lihotzki
1b4045dcb2 Add Window::set_ime_purpose
This adds a way to set the purpose for the IME input, implemented
only on Wayland for now.
2023-01-29 18:46:46 +03:00
Markus Siglreithmaier
23b821285c On Windows, fix window size for maximized, undecorated windows (#2584)
Co-authored-by: Amr Bashir <amr.bashir2015@gmail.com>
2023-01-28 14:04:47 +01:00
Diggory Hardy
c984476687 Clarify Window::set_decorations/is_decorated behaviour 2023-01-28 10:50:34 +03:00
Andrea Pessino
42c395e49d Fixed visibility/activation issues on Windows. (#2656) 2023-01-27 23:01:41 +01:00
Shane Pearman
422c6b1987 Allow introspection of WindowBuilder attributes
Makes WindowAttributes public and adds window_attributes() getter to
WindowBuilder.

In version 0.27, the WindowAttributes struct was made private, but this
removed the ability to introspect the default WindowBuilder values.
2023-01-27 08:38:56 +03:00
Amr Bashir
b457329003 Add WindowBuilder::with_active
Co-authored-by: Kirill Chibisov <contact@kchibisov.com>
2023-01-27 08:08:29 +03:00
Kirill Chibisov
930df0ec45 Fix clippy issues on stable 2023-01-27 07:18:58 +03:00
Markus Siglreithmaier
e1b7fda409 Bump windows-sys version to 0.45 (#2639)
Bump windows-sys version to fix regression
2023-01-23 22:10:28 +01:00
Mads Marquart
a82f66826b Use a bit less unsafe on iOS (#2643)
* Use a bit less `unsafe` on iOS

I did test this in XCode 11.3's "Debug View Heirarchy", the NSStringRust problem is no longer applicable (likely because Rust got better at emitting correct debug info).

* Avoid using `id` on iOS
2023-01-23 00:01:45 +01:00
Mads Marquart
0f2fbe373b Simplify event queuing on macOS (#2642) 2023-01-22 23:29:38 +01:00
Mads Marquart
7341ee80ea Note the status quo on RedrawRequested (#2641)
And link to https://github.com/rust-windowing/winit/issues/2640
2023-01-21 18:56:58 +01:00
Jim Eckerlein
d448d3e14f Add smart magnify gesture support for macOS (#2554)
* Add smart magnification gesture

* Deliver position of smart magnification event

* Document smart magnification event

* Revert "Deliver position of smart magnification event"

This reverts commit ac0e61a9a4.

* Remove mention of touchpad from smart magnification event

* Update change log

* Mention minimum macOS version supporting smart magnification

* Improve doc
2023-01-21 17:35:07 +01:00
Andreas Reich
a867032e1e [MacOS] Fix deadlock on maximizing window from event callback (#2636) 2023-01-21 17:29:29 +01:00
Douglas Dwyer
b711a11549 Properly remove window mouse event listeners (#2632)
* Properly remove window mouse event listeners

* Update CHANGELOG.md

* Fix formatting

Co-authored-by: Mads Marquart <mads@marquart.dk>
2023-01-21 16:58:05 +01:00
Amr Bashir
809162fbd0 Add Window::is_minimized
Co-authored-by: Kirill Chibisov <contact@kchibisov.com>
Co-authored-by: Markus Siglreithmaier <m.siglreith@gmail.com>
2023-01-20 00:39:04 +03:00
Kirill Chibisov
de782504ab On Wayland, add support for fractional scaling
This adds support for the fractional scaling on Wayland via the
wp-fractional-scale protocol.

Co-authored-by: Julian Orth <ju.orth@gmail.com>
2023-01-20 00:02:16 +03:00
Roman Akberov
1886949efe On macOS, fix middle/other mouse buttons reporting
All buttons except for the left/right/middle was always reported
as middle.
2023-01-18 06:32:34 +03:00
Kirill Chibisov
b1a5fae1f5 On X11, fix errors bleeding from hooks handling them
This commit fixes it, by not updating the `latest_error` when
any of the hooks handled the error, otherwise it'd interfere
with the winit's error checking.
2023-01-18 05:58:09 +03:00
Amr Bashir
a88d2e079d On Windows and MacOS, add Window::has_focus 2023-01-17 04:30:14 +03:00
Amr Bashir
067535eb38 Fix Window::set_minimized(false) on Windows
When other application minimized the winit window the
minimize state was going out of sync. This commit fixes
it by polling the state in `set_minimized`.
2023-01-17 03:22:52 +03:00
John Nunley
7d626d9dfd Add a function for waiting on a Duration 2023-01-16 04:14:09 +03:00
Kirill Chibisov
62ce14a013 Add Window::set_transparent
Provide a hint to system compositor whether the window is transparent or
not. Only implemented on macOS and Wayland for now.
2023-01-15 23:39:36 +03:00
Turki Jamaan
6cf0bf76da iOS: fix accidentally flipped assertion (#2629)
* iOS: fix accidentally flipped assertion

* No need to update the changelog
2023-01-13 23:40:24 +01:00
Michael Murphy
9225b2812e feat(x11): Add Window::drag_resize_window (#2515) 2023-01-11 10:07:09 -07:00
John Nunley
490abcad14 Remove xlib_xconnection from public interface 2023-01-10 11:46:48 +03:00
Jeremy Soller
66ca445caa Redox OS support (#2588)
* Add Redox OS support

* Simplify control flow usage

* Apply more recommendations

* Update naming to indicate that Orbital is a platform

* Adjust import order
2023-01-05 06:58:08 -07:00