* Feature/1090 native drag and drop for file and folder (#3203)
* implement basic dnd for linux
* implemented windows
* progress changed linux handling and added coordinates to drop
* progress fix drop coordinates on windows
* progress remove log from windows
* progress move js
* update js after merge
* fix event listener registration
* fix segfault on non file drag
* remove logs, fix coordinates
* minor changes, simplify to drop only
* rename EnableWails -> EnableFileDrop
* add documentation (PR id missing)
* add PR id to changelog
* fix remove casting from malloc
* fix nil check for OnFileDrop's callback
* fix nil check for OnFileDrop skip event when nil
* add error message for nil callback in OnFileDrop
---------
Co-authored-by: lyimmi <lelvente.zambo@gmail.com>
Co-authored-by: Lea Anthony <lea.anthony@gmail.com>
* implement native drag and drop for macOS (#3250)
* implement native drag and drop for macOS
* update docs
* add to changelog
* update docs (macOS is supported)
* Fix windows DragAndDrop options
* Fix class unset on dragleave for full frame elements
* improve class unset (nested elements and borders case)
* Fix runtime drop target detection and CSS class assignment
* Edit changelog
* Fix drag-and-drop options in references
* Update v2/internal/frontend/desktop/darwin/WailsWebView.m
* Update v2/internal/frontend/desktop/darwin/WailsWebView.m
---------
Co-authored-by: Zámbó, Levente <levente.zambo@gmail.com>
Co-authored-by: lyimmi <lelvente.zambo@gmail.com>
Co-authored-by: Lea Anthony <lea.anthony@gmail.com>
Co-authored-by: Andrey Pshenkin <andrey.pshenkin@gmail.com>
Co-authored-by: Pavel Binar <pavel@beamtransfer.io>
* get dimensions working for linux
* Cleaning up some GTK code
I was getting the following errors due to some bad casts.
Gdk-CRITICAL **: 18:58:51.943: gdk_monitor_get_geometry: assertion 'GDK_IS_MONITOR (monitor)' failed
Gdk-CRITICAL **: 18:58:51.943: gdk_display_get_monitor_at_window: assertion 'GDK_IS_DISPLAY (display)' failed
This commit fixes these errors
* Adding Screen namespace along with linux implementation
* moving ScreenGetAll into a more appropriate place
* Fixing typescript definition mistake, documentation, ordering of functions, and formatting
* add ScreenGetAll to more templates
* moving screen into its own javascript file
* fixing bug where screen objects are not returned from the runtime function
* rebuilding frontend wrapper package
* adding windows implementation of ScreenGetAll
* adding screen get all implementation for darwin
* reverting a change that is unrelated to the work on expose-dimensions
* removing duplicate comparison
* changing GetNthScreen in screen API on macos
To use frame instead of visibleframe to keep into account the space the the dock takes up
We want to include that space in the calculation in order to keep the sizes of screens consistent across platforms
* Correcting screen jsdoc
It used to say it returned a single screen object. Now it says that it returns an array of screen objects
* Fixing typo in function name
* reverting pointless spacing change
* reverting pointless spacing change
Co-authored-by: Lea Anthony <lea.anthony@gmail.com>
Co-authored-by: shmuel.kamensky <shmuel.kamensky@shutterfly.com>
* [linux] Move SetTitle and startDrag to main thread
* [linux] Move SetPosition, Center, Fullscreen and UnFullscreen to main thread
* Fix runtime Window Get/Set Position signatures
* Fix vanilla template keyboard handling