3.1: Windows Edition
New[All] Window minimize/restore functionality. Ability to show window minimized on startup.
New[All] Window hide/show functionality. Ability to show window hidden on startup.
New[All] Window move functionality. Ability to set window coordinates on startup. Thanks @adbenitez.
window.pywebviewreadyDOM event that is thrown when
New[All] Links opened via
window.openare opened in a new browser window.
Fix[All] Fix concurrent invocations of JS API functions.
Fix[All] Fix unescaped single quote in JS API calls.
Fix[All] Built-in HTTP server is now multi-threaded. This fixes stalling HTTP requests in some cases.
window.set_window_sizeis deprecated in favour to
Improvement[All] Exceptions are now handled in JS API functions and rerouted to the function promise catch method.
Improvement[All] Suppress built-in HTTP server logging. Logging is active only in the debug mode.
Fix[CEF] Fix deadlock occuring when trying to access
window.pywebviewobject right after the
Fix[CEF] High DPI fix resulting in a small window appearing inside the main window
Fix[EdgeHTML] Unicode error when loading HTML
console.lognot writing to Python console in debug mode
Fix[MSHTML] Forcing MSHTML via
gui=mshtmlis now possible. ¯\_(ツ)_/¯
Fix[All] Prevent JSON like strings being converted to JSON objects when returning JS API calls. #352
Fix[Windows] HTTP server is now used by default for local URLs and HTML for EdgeHTML. This fixes a PermissionDenied error, when the directory the executable is in is not writable.
Fix[Tests] Tests now fail on an exception occuring in a thread.
Fix[All] Don't escape line breaks in result of js_bridge_call. Thanks @kvasserman.
Fix[Windows] Support for Pyinstaller noconsole mode
Fix[Windows] Fix Windows version detection with frozen executables.
Fix[Windows] Open folder dialog now supports
Fix[QT] Workaround for segmentation fault on closing the main window. Thanks @kvasserman.
Fix[Pytest] Fix for pytest warning about invalid escape sequence
New[All] New API. The API is not compatible with older versions of pywebview. See https://pywebview.flowrl.com for usage details. #272
New[All] Built-in HTTP server. #260
New[All] Autogenerated CSRF token exposed as
get_elementsfunction to retrieve DOM nodes. #292
New[All] New events system that lets you to subscribe to events.
shownevents are implemented. #201
New[Windows] EdgeHTML support. Thanks @heavenvolkoff. #243
Fix[Windows] Fullscreen mode. #338
Fix[CEF] Support for PyInstaller in onefile mode
New[All] Support for frameless windows.
Fix[Windows] Fix broken installation of v2.3
New[All] Ability to resize window after creation
webview.set_window_size(width, height). Thanks @aprowe #274
New[Windows] Chrome Embedded Framework (CEF) support #15
Improvement[All] pywebview does not interfer with Python's logger configuration #295
Fix[All] Empty DOM issues when window is created without a URL #285
Improvement[macOS] Web renderer upgraded to WKWebView
Improvement[macOS] Add support for Mojave dark mode
Fix[macOS] Problem with handling paths containing spaces #283
Fix[QT] Better support for QTWebKit and QTWebChannel #304
Improvement[QT] Remove support for QT4
Fix[GTK] Thrown exception not Python 2 compatible #277
NewReintroduce [qt] extra require switch
NewBrand new documentation at https://pywebview.flowrl.com
ImprovementSimplify installation. Now pywebview can be installed by
pip install pywebview. Dependencies will be resolved and installed automatically
Improvement[GTK] Update to WebKit2
PYWEBVIEW_GUIenvironment variable and
webview.config.guiproperty. Acceptable values are are
Fix[Cocoa] Closing main window does not result in program termination
Fix[All] New main window re-creation after closing. #229
Fix[QT] Debug mode #233
Fix[Cocoa/Windows] Preserve JS API on page reload
toggle_fullscreen()function #232. Thanks @lt94
load_css()function. Thanks @wormius.
Fix[QT] Fix a deadlock preventing QT implementation from starting
Fix[QT] QT is set to default on QT-based systems
Fix[Winforms] Fix installation of dlls
New[All] Multi-window support
New[All] Debug mode. Web inspector for Cocoa/GTK/QT and basic debug information for WinForms.
New[All] File filter support in
target='_blank'links are now opened in an external browser
New[All] Change window title via a
New[All] Support for relative local URLs in
load_html. Linked local resources are resolved as well. #186
todosexample app demonstrating js api and relative local URLs.
New[All] Text select in the webview window is disabled by default. Added
New[QT] OpenBSD 6.x support #213. Thanks @hucste.
load_htmldefaults to the directory of the entry script
Fix[All] Consistent return types with
evaluate_jsacross different platforms #175
Fix[All] Various concurrency issues and deadlocks
Message from webpagewhen using
Fix[Winforms] Support for high DPI #179
Fix[QT] Support for QT 5.10 #171. Thanks @adbenitez
Fix[QT] Deprecate QT4. Starting from this verison new features won't be tested on QT4 and support will be removed in the future.
- pywebview has the official logo
- @shivaprsdv is now an official maintainer of the project
Fix[Cocoa] Implement missing webview components (file input dialog, alert()/confirm() JS functions)
Fix[Winforms] Fix issue with non-responsive UI when a loading screen background color is used
Fix[Winforms] Add support for Del and Ctrl+A keys in input elements.
New[QT] QT5 is now prefererred over QT4
Fix[QT] Fix return parameters of
create_file_dialogto have the same format as on other platforms
Fix[GTK] Better threading model. Thanks to @jorants #121
New[All] Add a basic test suite and continuous integration. #88
New[All] Add a background_color parameter to create_window, which specifies the default color of the webview window. Refer to examples/loading_indicator.py for example use. Thanks to @shivaprsdv. #90
New[Cocoa] Disable backspace navigation. Thanks to @shivaprsdv. #102
New[Cocoa] Implementation of window.print() and window.confirm method. Thanks to @shivaprsdv. #97
Fix[Cocoa] Fix non-existing localization string in save file dialog
New[Winforms] Disable all the shortcut keys of web navigation
Fix[Winforms] Fix load_html failing sometimes due thread violation
Fix[GTK] Implement fall-through to QT, when GTK is present, but not GTK.WebKit.
New[All] Quit confirmation dialog #31
New[All] webview.config can be used using the dot notation (ie. webview.config.use_win32 = True)
New[Winforms] Disable context menu
Fix[Winforms] Application icon is now visible in the application window when frozen with PyInstaller #91
Fix[Mac] load_html() is invoked as soon as the webview is ready #93
Fix[QT] get_current_url() not working due a typo. Thanks @maroc81. #85
Fix[GTK] Better exception handling when GTK is not found #94
Fix[GTK] destroy_window() #95
New[All] toggle_fullscreen function #52
New[All] get_current_url function #76
Fix[Winforms] Fixed resizable=False not being enforced #73
New[All] pip installation now supports choosing what dependencies to install. See README for more information. Thanks @josePhoenix
New[All] Localization support. Refer to
examples/localization.pyfor an example use
New[Mac] QT5 support
Fix[Windows] File dialogs are now attached to the main window
Fix[Windows] Pyinstaller crash issue with an icon in Windows Forms
New[Cocoa] Added View -> Fullscreen standard menu item. Thanks to @bastula.
New[Cocoa] Added About menu item #45. Thanks to @bastula.
New[Windows] An application icon for Windows Forms
Fix[Windows] Removed unnecessary pywin32 dependencies from Windows Forms #60
Fix[Linux] Thread violation in load_url in GTK implementation #59
Fix[All] Python 2 compatibility issue in Flask Example (#52). Thanks to @bastula.
Fix[Windows] Python 3 compatibility issue in Windows Forms implementation (#51)
Fix[Linux] Resizing width/height: 100% problem on GTK (#53). Thanks to @klausweiss.
Fix[Linux] GTK window failing to open. Thanks to @lchish. #50
load_htmlfunction that allows dynamic loading of HTML code, instead of a URL. Implemented for all platforms except Win32 (use Windows Forms). Thanks to @ysobolev #39
New[All] Added an example of a Flask-based application skeleton. The example can be found in
New[Windows] Windows Forms based implementation of webview window. Requires pythonnet.
New[Windows] Introduced config["USE_WIN32"] variable that lets you choose between Win32 and Windows Forms. Default to True (Windows Forms will be made as default in the future)
Fix[Windows/Linux] Got rid of installation dependencies on Windows and Linux. The dependencies now have to be installed by hand and the choice of dependencies is left to user
Fix[Linux] Compatibility with Qt 5.5. Thanks to @danidee10. #48
New[OSX] Add a default application menu #35. Thanks @cuibonobo
New[Linux] GTK is made as default and pypi dependency added. USE_GTK environment variable is also deprecated. To use QT, set
webview.config["USE_QT"] = True
Fix[Windows] Open folder of create_file_dialog now returns Unicode, instead of byte encoding.
Fix[Windows] Fix a dead-lock that sometimes occurs on a window creation, when used with a HTTP server running in a separate thread.
Fix[Windows] PyInstaller: Icon not found #29
New[All] Add an ability to programmatically destroy a webview window
Fix[Windows] Fullscreen mode
Fix[Windows] Change setup.py to use pypiwin32 #22
Fix[Windows] Relative import of win32_gen fixed on Python 3 #20. Thanks to @yoavram for the contribution
Fix[Windows] FileNotFound exception on Windows 2003. Thanks to @jicho for the contribution
Fix[OSX] Non-SSL URLs are allowed by default on El Capitan. Thanks to @cr0hn for the contribution
New[All] Right click context menu is disabled #12
New[All] Window minimum size constraints #13
New[All] Save file dialog
New[All] An option to set a default directory in a file dialog
New[GTK] Introduced USE_GTK environment variable. When set, GTK is preferred over QT.
Fix[Windows] Webview scrollbar sizing with a non-resizable window
Fix[Windows] Add support for application icon #9
Fix[Windows] Disable logging spam for comtypes
Fix[Windows] Invisible scrollbars
Fix[Windows] Fullscreen mode
Fixed#10 Underlying browser does not resize with window under windows
Released on 08/10/2015
FixedPressing close window button terminates the whole program on OSX
Released on 06/10/2015
NewSupport for native open file / open folder dialogs
Fixed#6 FEATURE_BROWSER_EMULATION not in winreg.HKEY_CURRENT_USER. Thanks to @frip for the fix.
Released on 08/04/2015
FixedPython 3 compatibility in Win32 module (thanks @Firnagzen) #3
FixedFloating values for window dimensions causing issues on Windows XP (thanks @Firnagzen) #4
FixedCorrect IE version registry key on Windows XP (thanks @Firnagzen) #5
Released on 11/02/2015
FixedA problem preventing from creating a window on Windows
Released on 30/11/2014
Released on 20/11/2014
- First release
- Linux and OSX support