Konkitoman
a21cb80f56
Merge branch 'master' of https://github.com/emilk/egui into multiples_viewports
2023-08-29 10:00:14 +03:00
Emil Ernerfeldt
b6f46b000b
Some clippy fixes from 1.72.0
2023-08-25 07:44:25 +02:00
Konkitoman
6c91562c7b
Now viewport pos and size are stored in InputState::{viewport_inner_pos, viewport_outer_pos, viewport_inner_size, viewport_outer_size}
...
This fixes a lot of problems
2023-08-24 09:14:48 +03:00
Konkitoman
9c73c2f4b1
Revert "Now in screen_rect min is the viewport position and max is the viewport size"
...
This reverts commit 4bbdab1788 .
2023-08-24 07:55:56 +03:00
Konkitoman
c9faa78e5b
Make the window position and size to not get set when the window is mimimized
...
And now Memory::new_pixels_per_point is not taken because all viewports need to have the same dpi
2023-08-24 07:45:42 +03:00
Konkitoman
d90db12e88
Fix: window not redrawing when moving
2023-08-22 11:33:38 +03:00
Konkitoman
7aefba60df
Fix windows and android errors
2023-08-22 11:20:34 +03:00
Konkitoman
8e864bdfbc
typo: fix typos
2023-08-22 11:08:56 +03:00
Konkitoman
18575d5931
Fix all warnings
2023-08-15 04:04:52 +03:00
Konkitoman
191ee82c3e
Merge branch 'master' of https://github.com/emilk/egui into multiples_viewports
2023-08-15 02:17:12 +03:00
Konkitoman
08f207a0a8
Fix some warnings
2023-08-14 17:59:26 +03:00
Konkitoman
4bbdab1788
Now in screen_rect min is the viewport position and max is the viewport size
2023-08-12 20:36:41 +03:00
lucasmerlin
1036cb1f7d
Change force to be Option<f32> instead of f32 ( #3240 )
2023-08-12 13:50:40 +02:00
Konkitoman
74e50044b5
Added maximize_button, mimimize_button and hittest on ViewportBuilder
...
!!! hittest is not working because of winit !!!
2023-08-11 18:19:57 +03:00
Konkitoman
d33075388c
* Implement changes_between_builders
...
* Now process_viewport_commands was renamed to process_viewports_commands
* Added process_viewport_commands
* eframe glutin backend uses changes_between_builders
2023-08-11 17:39:14 +03:00
Emil Ernerfeldt
dd417cfc1a
eframe: Better restore Window position on Mac when on secondary monitor ( #3239 )
2023-08-11 16:25:22 +02:00
Emil Ernerfeldt
08fb447fb5
Increase MSRV to 1.67 ( #3234 )
...
* Bump MSRV to 1.67
* clippy fixes
* cargo clippy: inline format args
* Add `clippy::uninlined_format_args` to cranky lints
* Fix clippy on wasm
* More clippy fixes
2023-08-11 13:54:02 +02:00
Konkitoman
88a7071e74
Moved create_winit_window_builder from crates/eframe/src/native/run.rs to crates/egui-winit/src/lib.rs
2023-08-10 18:53:43 +03:00
Konkitoman
0e7803bf61
Add all winit runtime window attributes as viewport commands in ViewportCommand
2023-08-10 18:47:48 +03:00
Emil Ernerfeldt
7e035c6dd1
Allow users to opt-out of default winit features ( #3228 )
...
* Do not enable winit features by default
* Enable default winit features by default
* Add x11 feature
2023-08-10 17:09:01 +02:00
Konkitoman
9c6044aa7d
Change ViewportBuilder how it's working
2023-08-10 16:53:31 +03:00
Konkitoman
a88a5cdf83
Fix some warnings
2023-08-09 19:15:35 +03:00
Konkitoman
86ef11c521
Now viewport_id always will be in a ViewportId you cannot create a ViewportId you can only get the main one everywere or get the current viewport id with Context::get_viewport_id
2023-08-09 18:33:59 +03:00
Emil Ernerfeldt
92593b70fa
Changelogs: document that they are updated upon release (not by users)
2023-08-09 17:12:47 +02:00
Brian Janssen
67ba4f2811
Add comment explaining Tab button ( #2872 )
2023-08-09 11:48:54 +02:00
Konkitoman
1a7c4700fd
Now embedded is stored on window, and fix crash when we set a window size to 0
2023-08-08 21:18:03 +03:00
Konkitoman
d45fc14a13
Move viewports stuff to crates/egui/src/viewports.rs
2023-08-07 19:02:18 +03:00
Konkitoman
03bc3f4c52
Now viewport_sync will process viewport_commands and will create new viewports if is needed!
...
Some refactoring now processing viewports_commands is in egui_winit::process_viewport_commands
And creating new windows and cleaning is in GlowWinitApp::process_viewport_builders
2023-08-05 16:11:39 +03:00
bernsteining
67d5bd4392
fix(docs): remove duplicate typo ( #3111 )
2023-07-26 19:00:13 +02:00
Konkitoman
f4a196cddc
Now a WindowEvent::CloseRequested is received will be sent to egui_winit::State in RawInput
...
Now when we press the close button from a native window if the window has a open variabile connected the window will be closed
2023-07-24 16:15:34 +03:00
Konkitoman
ea2dcd8cb5
Rename every thing that i was implemented for multiples windows to Viewport
2023-07-23 12:47:36 +03:00
Konkitoman
c91de8a871
Some more work for multiples windows support
2023-07-18 15:29:56 +03:00
Emil Ernerfeldt
083d61fccd
Update to puffin 0.16 ( #3144 )
2023-07-10 12:29:01 +02:00
Emil Ernerfeldt
307565efa5
Release 0.22.0 - A plethora of small improvements
2023-05-23 19:58:04 +02:00
Emil Ernerfeldt
cb6bcde22c
Update changelogs
2023-05-23 17:33:01 +02:00
Emil Ernerfeldt
8c5d235bfb
cargo update ( #3018 )
...
* cargo update
Updating crates.io index
Updating ab_glyph v0.2.20 -> v0.2.21
Updating aho-corasick v0.7.20 -> v1.0.1
Updating android-activity v0.4.0 -> v0.4.1
Updating anyhow v1.0.69 -> v1.0.71
Updating arrayref v0.3.6 -> v0.3.7
Updating async-broadcast v0.5.0 -> v0.5.1
Updating async-executor v1.5.0 -> v1.5.1
Updating async-io v1.12.0 -> v1.13.0
Updating async-lock v2.6.0 -> v2.7.0
Updating async-recursion v1.0.2 -> v1.0.4
Updating async-task v4.3.0 -> v4.4.0
Updating async-trait v0.1.64 -> v0.1.68
Updating atomic_refcell v0.1.9 -> v0.1.10
Adding base64 v0.21.1
Updating bindgen v0.64.0 -> v0.65.1
Updating bitflags v2.1.0 -> v2.3.1
Updating block-buffer v0.10.3 -> v0.10.4
Updating bumpalo v3.12.0 -> v3.13.0
Updating bytemuck v1.13.0 -> v1.13.1
Updating bytemuck_derive v1.4.0 -> v1.4.1
Updating cfg-expr v0.11.0 -> v0.15.1
Updating chrono v0.4.23 -> v0.4.24
Updating ciborium v0.2.0 -> v0.2.1
Updating ciborium-io v0.2.0 -> v0.2.1
Updating ciborium-ll v0.2.0 -> v0.2.1
Updating clang-sys v1.4.0 -> v1.6.1
Updating clap v3.2.23 -> v3.2.25
Updating cocoa-foundation v0.1.0 -> v0.1.1
Updating concurrent-queue v2.1.0 -> v2.2.0
Updating core-foundation-sys v0.8.3 -> v0.8.4
Updating cpufeatures v0.2.5 -> v0.2.7
Updating crossbeam-utils v0.8.14 -> v0.8.15
Removing cxx v1.0.89
Removing cxx-build v1.0.89
Removing cxxbridge-flags v1.0.89
Removing cxxbridge-macro v1.0.89
Updating digest v0.10.6 -> v0.10.7
Updating dyn-clone v1.0.10 -> v1.0.11
Updating enum-map v2.4.2 -> v2.5.0
Updating enumn v0.1.6 -> v0.1.8
Removing errno v0.2.8
Updating fastrand v1.8.0 -> v1.9.0
Adding fdeflate v0.3.0
Updating flate2 v1.0.25 -> v1.0.26
Updating futures-core v0.3.26 -> v0.3.28
Updating futures-io v0.3.26 -> v0.3.28
Updating futures-lite v1.12.0 -> v1.13.0
Updating futures-sink v0.3.26 -> v0.3.28
Updating futures-task v0.3.26 -> v0.3.28
Updating futures-util v0.3.26 -> v0.3.28
Updating generic-array v0.14.6 -> v0.14.7
Updating getrandom v0.2.8 -> v0.2.9
Updating gimli v0.27.1 -> v0.27.2
Updating glutin v0.30.4 -> v0.30.8
Updating glutin_egl_sys v0.4.0 -> v0.5.0
Updating gpu-alloc v0.5.3 -> v0.5.4
Adding home v0.5.5
Updating iana-time-zone v0.1.53 -> v0.1.56
Updating iana-time-zone-haiku v0.1.1 -> v0.1.2
Updating image v0.24.5 -> v0.24.6
Updating indexmap v1.9.2 -> v1.9.3
Updating io-lifetimes v1.0.6 -> v1.0.10
Updating itoa v1.0.5 -> v1.0.6
Updating jni v0.20.0 -> v0.21.1
Updating jobserver v0.1.25 -> v0.1.26
Updating js-sys v0.3.61 -> v0.3.63
Updating libc v0.2.139 -> v0.2.144
Removing link-cplusplus v1.0.8
Removing linux-raw-sys v0.1.4
Removing linux-raw-sys v0.3.2
Adding linux-raw-sys v0.3.8
Updating memmap2 v0.5.8 -> v0.5.10
Adding miniz_oxide v0.7.1
Updating mio v0.8.5 -> v0.8.6
Updating naga v0.12.0 -> v0.12.1
Removing nom8 v0.2.0
Updating num_enum v0.5.9 -> v0.5.11
Updating num_enum_derive v0.5.9 -> v0.5.11
Updating objc2 v0.3.0-beta.3 -> v0.3.0-beta.3.patch-leaks.3
Updating once_cell v1.17.0 -> v1.17.1
Updating orbclient v0.3.42 -> v0.3.45
Updating ordered-stream v0.1.4 -> v0.2.0
Updating os_str_bytes v6.4.1 -> v6.5.0
Updating owned_ttf_parser v0.18.1 -> v0.19.0
Updating parking v2.0.0 -> v2.1.0
Updating paste v1.0.11 -> v1.0.12
Updating pkg-config v0.3.26 -> v0.3.27
Updating plist v1.4.0 -> v1.4.3
Updating png v0.17.7 -> v0.17.8
Updating polling v2.5.2 -> v2.8.0
Adding prettyplease v0.2.5
Updating proc-macro-crate v1.3.0 -> v1.3.1
Updating proc-macro2 v1.0.56 -> v1.0.58
Updating profiling v1.0.7 -> v1.0.8
Updating puffin v0.14.2 -> v0.14.3
Updating quick-xml v0.26.0 -> v0.28.2
Updating quote v1.0.26 -> v1.0.27
Updating range-alloc v0.1.2 -> v0.1.3
Updating redox_syscall v0.3.4 -> v0.3.5
Updating regex v1.7.1 -> v1.8.2
Removing regex-syntax v0.6.28
Adding regex-syntax v0.6.29
Adding regex-syntax v0.7.2
Updating rfd v0.11.0 -> v0.11.4
Updating rgb v0.8.35 -> v0.8.36
Updating rustc-demangle v0.1.21 -> v0.1.23
Removing rustix v0.36.9
Removing rustix v0.37.3
Adding rustix v0.37.19
Updating ruzstd v0.3.0 -> v0.3.1
Updating ryu v1.0.12 -> v1.0.13
Removing scratch v1.0.3
Updating sctk-adwaita v0.5.3 -> v0.5.4
Updating serde v1.0.152 -> v1.0.163
Updating serde_derive v1.0.152 -> v1.0.163
Updating serde_json v1.0.92 -> v1.0.96
Updating serde_repr v0.1.10 -> v0.1.12
Adding serde_spanned v0.6.2
Adding simd-adler32 v0.3.5
Updating slab v0.4.7 -> v0.4.8
Updating socket2 v0.4.7 -> v0.4.9
Removing syn v1.0.107
Removing syn v2.0.15
Adding syn v1.0.109
Adding syn v2.0.16
Updating system-deps v6.0.3 -> v6.1.0
Adding target-lexicon v0.12.7
Updating tempfile v3.4.0 -> v3.5.0
Updating thiserror v1.0.38 -> v1.0.40
Updating thiserror-impl v1.0.38 -> v1.0.40
Updating time v0.3.17 -> v0.3.21
Updating time-core v0.1.0 -> v0.1.1
Updating time-macros v0.2.6 -> v0.2.9
Updating tiny-skia v0.8.3 -> v0.8.4
Updating tiny-skia-path v0.8.3 -> v0.8.4
Updating toml v0.5.11 -> v0.7.4
Updating toml_datetime v0.5.1 -> v0.6.2
Updating toml_edit v0.18.1 -> v0.19.9
Updating tracing-attributes v0.1.23 -> v0.1.24
Updating tracing-core v0.1.30 -> v0.1.31
Updating ttf-parser v0.18.1 -> v0.19.0
Updating tts v0.25.0 -> v0.25.5
Updating unicode-bidi v0.3.10 -> v0.3.13
Updating unicode-ident v1.0.6 -> v1.0.8
Updating walkdir v2.3.2 -> v2.3.3
Updating wasm-bindgen-futures v0.4.34 -> v0.4.36
Updating web-sys v0.3.61 -> v0.3.63
Updating webbrowser v0.8.7 -> v0.8.10
Removing wepoll-ffi v0.1.2
Updating windows v0.43.0 -> v0.48.0
Removing windows-sys v0.42.0
Updating windows-targets v0.42.1 -> v0.42.2
Updating windows_aarch64_gnullvm v0.42.1 -> v0.42.2
Updating windows_aarch64_msvc v0.42.1 -> v0.42.2
Updating windows_i686_gnu v0.42.1 -> v0.42.2
Updating windows_i686_msvc v0.42.1 -> v0.42.2
Updating windows_x86_64_gnu v0.42.1 -> v0.42.2
Updating windows_x86_64_gnullvm v0.42.1 -> v0.42.2
Updating windows_x86_64_msvc v0.42.1 -> v0.42.2
Updating winit v0.28.1 -> v0.28.6
Adding winnow v0.4.6
Updating xml-rs v0.8.4 -> v0.8.13
Updating zbus v3.9.0 -> v3.10.0
Updating zbus_macros v3.9.0 -> v3.10.0
Updating zbus_names v2.5.0 -> v2.5.1
Updating zstd-sys v2.0.6+zstd.1.5.2 -> v2.0.8+zstd.1.5.5
Updating zvariant v3.10.0 -> v3.14.0
Updating zvariant_derive v3.10.0 -> v3.14.0
Adding zvariant_utils v1.0.1
* Downgrade flate2 and png to avoid duplicated deps
* downgrade plist to avoid duplication of base64 crate
* Allow license `Apache-2.0 WITH LLVM-exception`
* Update to puffin 0.15
2023-05-23 09:25:39 +02:00
Emil Ernerfeldt
b758e9dbf0
Update accesskit to 0.11 ( #3012 )
...
* Update accesskit to 0.11
* Add instructions on how to test the web viewer to CONTRIBUTING.md
Also removed dependency on `jq`
Closes https://github.com/emilk/egui/issues/2859
2023-05-22 19:20:58 +02:00
Jinlei Li
09e1569bf3
Enable egui-winit to support wasm target ( #2949 )
2023-04-24 09:16:50 +02:00
Emil Ernerfeldt
d1af798a9b
Clear all keys and modifies on focus change ( #2933 )
...
It is very easy for keys to become stuck when we alt-tab,
or a save-dialog opens by Ctrl+S, etc.
Therefore we new clear all the modifiers and down keys to avoid that.
2023-04-19 15:27:51 +02:00
Ryan Hileman
ede3ded977
egui-winit: Use RawDisplayHandle for smithay clipboard init ( #2914 )
2023-04-19 09:14:23 +02:00
Emil Ernerfeldt
9c9a54ce36
Replace tracing with log ( #2928 )
...
* Replace tracing crate with log
It's just so much simpler to use
* Add `bacon wasm` job
* eframe: add a WebLogger for piping log events to the web console
2023-04-18 21:11:26 +02:00
Jozef Číž
33aa4d698f
Fix typos ( #2866 )
...
* Fix typos in comments
* Fix typos in demo texts
* Fix typos in code names
* Fix typos in cargos
* Fix typos in changelogs
2023-04-18 15:52:45 +02:00
YgorSouza
8326fffdb0
Add raw mouse wheel event ( #2782 )
...
* Add raw mouse wheel event
The event is sent as it comes from the backend, so it will follow
different conventions depending on the target, and it is up to the user
code to deal with that. The goal is to allow advanced users to implement
alternative UI controls, e.g., using Ctrl to scroll the plot
horizontally instead of zooming, or use Shift to scroll faster instead
of changing direction.
* Change Pixel to Point for consistency
Apply suggestions from code review by emilk
Co-authored-by: Emil Ernerfeldt <emil.ernerfeldt@gmail.com >
* Inline mouse wheel raw event closure
It was meant only to be able to use the same variable names without
shadowing the rest of the code, but a simple block accomplishes the same
thing.
* Use wildcard on wheel event match
Co-authored-by: Emil Ernerfeldt <emil.ernerfeldt@gmail.com >
* Flip mouse wheel delta sign on web to match native
* Use wheel event data to generate scroll event
To avoid doing the same match and sign conversion twice.
---------
Co-authored-by: Emil Ernerfeldt <emil.ernerfeldt@gmail.com >
2023-04-18 15:44:26 +02:00
Robert Bragg
89e42884fc
Remove android-activity dependency + add activity features ( #2863 )
...
Instead of depending on android-activity directly, this exposes the
android-native-activity and android-game-activity features from Winit.
This ensures that applications can choose what android-backend they use
while also relying on Winit to decide what version of android-activity to
use - without increasing the risk of a version conflict by having a direct
dependency.
_(NB: Egui doesn't currently use the android-activity API itself)_
Since android-activity provides the `android_main()` entry point for
Android applications it's not possible to link in multiple version of
the android-activity crate and so it's particularly important to
avoid unnecessary direct dependencies that could cause a version
conflict in the future.
To help avoid the need for applications to directly depend on
android-activity the Winit crate re-exports the android-activity API
and exposes features to configure the backend so that application crates
can instead rely on Winit to pull in a compatible version of
android-activity. (This way version bumps for android-activity only
need to be synchronized with the Winit crate).
CI now enables the `android-native-activity` feature for testing.
Fixes : #2829
Fixes : #2720
Closes : #2834
2023-04-18 15:40:30 +02:00
Emil Ernerfeldt
5cdbce04a8
Update to accesskit 0.10.1 ( #2855 )
...
* Update to accesskit 0.10.1
* Add helper script to run cargo deny
2023-03-30 10:23:54 +02:00
Diggory Hardy
fb726aaabb
egui-winit: fix unsafe API of Clipboard::new ( #2765 )
...
* egui-winit: fix unsafe API of Clipboard::new
The old API allowed passing an arbitrary pointer. The new
API still breaks safety by allowing the object to outlive
the input, but is at least safer.
* Update crates/egui-winit/src/clipboard.rs
Co-authored-by: Emil Ernerfeldt <emil.ernerfeldt@gmail.com >
* Fix typo
* Update crates/egui-winit/src/clipboard.rs
Co-authored-by: Emil Ernerfeldt <emil.ernerfeldt@gmail.com >
* cargo fmt
* egui-winit: fix init_smithay_clipboard
---------
Co-authored-by: Emil Ernerfeldt <emil.ernerfeldt@gmail.com >
2023-03-30 10:21:07 +02:00
Gabriel Féron
24eccca8e6
Only enable instant/wasm-bindgen when building for wasm32 architecture ( #2808 )
2023-03-29 14:59:45 +02:00
Emil Ernerfeldt
f94187ab71
Remove misleading safety-badges
...
See https://github.com/emilk/egui/issues/2723
2023-02-28 22:35:08 +01:00
Emil Ernerfeldt
f71d79a0ff
Release egui-winit, eframe 0.21.1 - fix crash on monitor size/dpi change
...
https://github.com/emilk/egui/pull/2722
The crash could happen if the monitor size or DPI changes between runs
2023-02-12 15:29:47 +01:00
Aevyrie
95247daa17
Fix window position assertion caused by negative window size ( #2722 )
2023-02-12 15:14:38 +01:00