Co-authored-by: lucasfernog <lucasfernog@users.noreply.github.com> Co-authored-by: Lucas Nogueira <lucas@tauri.studio>
41 KiB
Changelog
[0.6.0]
- Account the monitor position when centering a window.
- Update
windows-rs
to0.37.0
, which requires Rust 1.61.0+.
[0.5.2]
- Use the event loop proxy to create a window so it doesn't deadlock on Windows.
[0.5.1]
- Added the
plugin
method to theWry
runtime, allowing extensions to the event loop. - Update wry to 0.16.2 and webkit2gtk to 0.18.0.
[0.5.0]
- The file drop event payloads are now percent-decoded.
- Fixes a crash when using the menu with the inspector window focused on macOS. In this case the
window_id
will be the id of the first app window. - Fixes a freeze when calling
set_size
in the main thread on Windows. - Expose methods to access the underlying native handles of the webview.
[0.4.0]
- *Breaking change:: Added the
clipboard
Cargo feature. - Expose Window cursor APIs
set_cursor_grab
,set_cursor_visible
,set_cursor_icon
andset_cursor_position
. - Fixes a panic when using the
create_tao_window
API. - Fixes a panic when a menu event is triggered when all windows are minimized on macOS.
- Fixes a rendering issue when resizing the window with the devtools open.
- *Breaking change:: Added the
global-shortcut
Cargo feature. - Added
WindowEvent::ThemeChanged(theme)
. - Added
theme
getter onWindow
. - Added
theme
setter to the WindowBuilder. - Create webview immediately when executed in the main thread.
[0.3.5]
- Fixes
WindowEvent::Destroyed
not firing.
[0.3.4]
- Added
close_devtools
andis_devtools_open
APIs to theDispatch
trait. - Emit
RunEvent::Exit
ontao::event::Event::LoopDestroyed
instead of afterRunEvent::ExitRequested
. - Breaking change: The
MenuItem::About
variant is now associated with a tuple value(String, AboutMetadata)
. - Support window parenting on macOS
- The file drop event is now part of the
WindowEvent
enum instead of a having a dedicated handler. - Breaking change: Use the dedicated
WindowEvent
enum onRunEvent
. - Added
create_proxy
to theRuntime
andRuntimeHandle
traits. - Allow specifying a user event type for the event loop message.
- Use a random window id instead of
tao::window::WindowId
to not block the thread waiting for the event loop to process the window creation. - Update
wry
to0.14
andtao
to0.7
. - Added the
WindowEvent::FileDrop
variant.
[0.3.3]
- Fixes a deadlock on the
Focused
event when the window is not visible. - Breaking change: Move
ico
andpng
parsing behindicon-ico
andicon-png
Cargo features. - Print a warning to stderr if the window transparency has been set to true but
macos-private-api
is not enabled.
[0.3.2]
- Fix requirements for
RuntimeHandle
,ClipboardManager
,GlobalShortcutHandle
andTrayHandle
.
[0.3.1]
- Change default value for the
freezePrototype
configuration tofalse
.
[0.3.0]
- Fix
window.center
panic when window size is bigger than screen size. - Enable non-session cookie persistence on Linux.
- Fixes a deadlock when creating a window from a menu event handler.
- Fixes
WindowEvent::Focus
andWindowEvent::Blur
events not firing. - Use webview's inner_size instead of window's value to get the correct size on macOS.
- Reimplement
remove_system_tray
on Windows to drop theSystemTray
to run its cleanup code. - Replace
WindowBuilder
'shas_menu
withget_menu
. - Fix empty header from CORS on Linux.
- The
run_return
API is now available on Linux. - Allow window, global shortcut and clipboard APIs to be called on the main thread.
- Change event loop callbacks definition to allow callers to move in mutable values.
- Breaking change: Add
macos-private-api
feature flag, enabled viatauri.conf.json > tauri > macOSPrivateApi
. - Refactor
create_tao_window
API to returnWeak<Window>
instead ofArc<Window>
.- c1494b35 refactor: return Weak on create_tao_window on 2021-08-31
- Added
any_thread
constructor on theRuntime
trait (only possible on Linux and Windows). - Added
run_on_main_thread
API onRuntimeHandle
. - Breaking change: Renamed the
RPC
interface toIPC
. - Added
open_devtools
to theDispatcher
trait. - The minimum Rust version is now
1.56
. - Replace all of the
winapi
crate references with thewindows
crate, and replacewebview2
andwebview2-sys
withwebview2-com
andwebview2-com-sys
built with thewindows
crate. This goes along with updates to the TAO and WRYnext
branches. - Update the
windows
crate to 0.25.0, which comes with pre-built libraries. WRY and Tao can both reference the same types directly from thewindows
crate instead of sharing bindings inwebview2-com-sys
. - This is a temporary fix of null pointer crash on
get_content
of web resource request. We will switch it back once upstream is updated. - Update wry to 0.13.
[0.2.1]
- Migrate to latest custom protocol allowing
Partial content
streaming and Header parsing.
[0.2.0]
-
Fix blur/focus events being incorrect on Windows.
-
Add
ExitRequested
event that allows preventing the app from exiting when all windows are closed, and anAppHandle.exit()
function to exit the app manually. -
Update gtk and its related libraries to v0.14. This also remove requirements of
clang
as build dependency. -
Implement
Debug
on public API structs and enums. -
Fix the error "cannot find type MenuHash in this scope"
-
Panic when a dispatcher getter method (
Window
,GlobalShortcutHandle
,ClipboardManager
andMenuHandle
APIs) is called on the main thread. -
Remove menu feature flag since there's no package dependency need to be installed on any platform anymore.
-
Adds
Resumed
andMainEventsCleared
variants to theRunEvent
enum. -
Adds
set_activation_policy
API to theRuntime
trait (macOS only). -
Allow creation of empty Window with
create_tao_window()
and management withsend_tao_window_event()
on the AppHandler. -
- Support macOS tray icon template to adjust automatically based on taskbar color.
-
Images you mark as template images should consist of only black and clear colors. You can use the alpha channel in the image to adjust the opacity of black content, however.
-
426a6b49 feat(macOS): Implement tray icon template (#2322) on 2021-07-29
-
Add
Event::Ready
on therun()
callback. Triggered once when the event loop is ready. -
Add webdriver support to Tauri.
[0.1.4]
- Allow preventing window close when the user requests it.
- Fixes SVG loading on custom protocol.
- Fixes
center
andfocus
not being allowed intauri.conf.json > tauri > windows
and ignored inWindowBuilderWrapper
. - Expose
gtk_window
getter. - Remove a few locks requirement in tauri-runtime-wry
- Fix macOS high CPU usage.
- Bump
wry
0.11 and fix focus integration to make it compatible with tao 0.4. Params
has been removed, along with all the associated types on it. Functions that previously accepted those associated types now accept strings instead. Type that used a generic parameterParams
now useRuntime
instead. If you use thewry
feature, then types with aRuntime
generic parameter should default toWry
, letting you omit the explicit type and let the compiler infer it instead.
tauri
:
- See
Params
note - If you were using
Params
inside a function parameter or definition, all references to it have been replaced with a simple runtime that defaults toWry
. If you are not using a custom runtime, just removeParams
from the definition of functions/items that previously took it. If you are using a custom runtime, you may need to pass the runtime type to these functions. - If you were using custom types for
Params
(uncommon and if you don't understand you probably were not using it), all methods that were previously taking the custom type now takes anInto<String>
or a&str
. The types were already required to be string-able, so just make sure to convert it into a string before passing it in if this breaking change affects you.
tauri-macros
:
- (internal) Added private
default_runtime
proc macro to allow us to give item definitions a custom runtime only when the specified feature is enabled.
tauri-runtime
:
- See
Params
note - Removed
Params
,MenuId
,Tag
,TagRef
. - Added
menu::{MenuHash, MenuId, MenuIdRef}
as type aliases for the internal type that menu types now use.- All previous menu items that had a
MenuId
generic now use the underlyingMenuId
type without a generic.
- All previous menu items that had a
Runtime
,RuntimeHandle
, andDispatch
have no more generic parameter oncreate_window(...)
and instead use theRuntime
type directlyRuntime::system_tray
has no moreMenuId
generic and uses the string basedSystemTray
type directly.- (internal)
CustomMenuItem::id_value()
is now hashed on creation and exposed as theid
field with typeMenuHash
.
tauri-runtime-wry
:
- See
Params
note - update menu and runtime related types to the ones changed in
tauri-runtime
.
tauri-utils
:
Assets::get
signature has changed to take a&AssetKey
instead ofimpl Into<AssetKey>
to become trait object safe.- fd8fab50 refactor(core): remove
Params
and replace with strings (#2191) on 2021-07-15
[0.1.3]
Window
is nowSend + Sync
on Windows.
[0.1.2]
- Adds
clipboard
APIs (write and read text). - Fixes window event being emitted to all windows listeners.
- Panic on window getters usage on the main thread when the event loop is not running and document it.
- Adds
focus
API to the WindowBuilder. - Adds support to PNG icons.
- Adds
is_decorated
getter on Window. - Adds
is_resizable
getter on Window. - Adds
is_visible
getter on Window. - Removes
image
dependency. For now only.ico
icons on Windows are supported, and we'll implement other types on demand to optimize bundle size. - The
run_on_main_thread
API now uses WRY's UserEvent, so it wakes the event loop. - Adds global shortcut interfaces.
- Adds
request_user_attention
API to theDispatcher
trait. - Adds
fn run_iteration
(macOS and Windows only) to the Runtime trait. - Adds
show_menu
,hide_menu
andis_menu_visible
APIs to theDispatcher
trait. - Adds
set_focus
API on Window. - Adds
set_skip_taskbar
API on Window. - Update
wry
to v0.10.0 and replace the removeddispatch_script
andevaluate_script
methods with the newevaluate_script
method inhandle_event_loop
. - Adds
skip_taskbar
API to the WindowBuilder. - Adds
Window#center
andWindowBuilder#center
APIs. - Adds
parent_window
andowner_window
setters to theWindowBuilder
(Windows only). - Adds window native handle getter (HWND on Windows).
[0.1.1]
- Fixes
system-tray
feature usage. - Fixes webview transparency.
[0.1.0]
- Breaking:
Context
fields are now private, and is expected to be created throughContext::new(...)
. All fields previously available throughContext
are now public methods. tauri-runtime-wry
initial release.