├── .gitattributes ├── .gitignore ├── Examples ├── api │ ├── Audio │ │ ├── Audio.cs │ │ ├── Audio.csproj │ │ ├── Makefile │ │ ├── Properties │ │ │ └── AssemblyInfo.cs │ │ ├── README.md │ │ ├── background.js │ │ ├── common.js │ │ ├── example.js │ │ ├── icon128.png │ │ ├── index.html │ │ ├── main.js │ │ ├── package.json │ │ └── renderer.js │ ├── Core │ │ ├── Core.csproj │ │ ├── CoreInstance.cs │ │ ├── Makefile │ │ ├── Properties │ │ │ └── AssemblyInfo.cs │ │ ├── README.md │ │ ├── background.js │ │ ├── common.js │ │ ├── example.js │ │ ├── icon128.png │ │ ├── index.html │ │ ├── main.js │ │ ├── package.json │ │ └── renderer.js │ ├── FileIO │ │ ├── FileIO.cs │ │ ├── FileIO.csproj │ │ ├── Makefile │ │ ├── Properties │ │ │ └── AssemblyInfo.cs │ │ ├── README.md │ │ ├── background.js │ │ ├── common.js │ │ ├── example.js │ │ ├── icon128.png │ │ ├── index.html │ │ ├── main.js │ │ ├── package.json │ │ └── renderer.js │ ├── GamePad │ │ ├── GamePad.cs │ │ ├── GamePad.csproj │ │ ├── Makefile │ │ ├── Properties │ │ │ └── AssemblyInfo.cs │ │ ├── README.md │ │ ├── background.js │ │ ├── common.js │ │ ├── icon128.png │ │ ├── index.html │ │ ├── main.js │ │ ├── package.json │ │ └── renderer.js │ ├── Graphics_2D │ │ ├── Graphics_2D.cs │ │ ├── Graphics_2D.csproj │ │ ├── Makefile │ │ ├── Properties │ │ │ └── AssemblyInfo.cs │ │ ├── README.md │ │ ├── index.html │ │ ├── main.js │ │ ├── package.json │ │ └── renderer.js │ ├── InputEvent │ │ ├── InputEvent.csproj │ │ ├── InputEventInstance.cs │ │ ├── Makefile │ │ ├── Properties │ │ │ └── AssemblyInfo.cs │ │ ├── README.md │ │ ├── background.js │ │ ├── common.js │ │ ├── example.js │ │ ├── index.html │ │ ├── main.js │ │ ├── package.json │ │ └── renderer.js │ ├── MediaStreamAudio │ │ ├── Makefile │ │ ├── MediaStreamAudio.cs │ │ ├── MediaStreamAudio.csproj │ │ ├── Properties │ │ │ └── AssemblyInfo.cs │ │ ├── README.md │ │ ├── background.js │ │ ├── common.js │ │ ├── example.js │ │ ├── icon128.png │ │ ├── index.html │ │ ├── main.js │ │ ├── package.json │ │ └── renderer.js │ ├── MouseCursor │ │ ├── Makefile │ │ ├── MouseCursor.cs │ │ ├── MouseCursor.csproj │ │ ├── Properties │ │ │ └── AssemblyInfo.cs │ │ ├── README.md │ │ ├── background.js │ │ ├── common.js │ │ ├── example.js │ │ ├── index.html │ │ ├── main.js │ │ ├── package.json │ │ └── renderer.js │ ├── MouseLock │ │ ├── Makefile │ │ ├── MouseLock.cs │ │ ├── MouseLock.csproj │ │ ├── Properties │ │ │ └── AssemblyInfo.cs │ │ ├── README.md │ │ ├── background.js │ │ ├── common.js │ │ ├── index.html │ │ ├── main.js │ │ ├── package.json │ │ └── renderer.js │ ├── NetworkMonitor │ │ ├── Makefile │ │ ├── NetworkMonitor.cs │ │ ├── NetworkMonitor.csproj │ │ ├── Properties │ │ │ └── AssemblyInfo.cs │ │ ├── README.md │ │ ├── background.js │ │ ├── common.js │ │ ├── example.js │ │ ├── icon128.png │ │ ├── index.html │ │ ├── main.js │ │ ├── package.json │ │ └── renderer.js │ ├── Socket │ │ ├── EchoServer.cs │ │ ├── Makefile │ │ ├── Properties │ │ │ └── AssemblyInfo.cs │ │ ├── README.md │ │ ├── Socket.cs │ │ ├── Socket.csproj │ │ ├── background.js │ │ ├── common.js │ │ ├── example.js │ │ ├── icon128.png │ │ ├── index.html │ │ ├── main.js │ │ ├── package.json │ │ └── renderer.js │ ├── URL_Loader │ │ ├── Makefile │ │ ├── Properties │ │ │ └── AssemblyInfo.cs │ │ ├── README.md │ │ ├── URL_Loader.cs │ │ ├── URL_Loader.csproj │ │ ├── URL_LoaderHandler.cs │ │ ├── background.js │ │ ├── common.js │ │ ├── example.js │ │ ├── icon128.png │ │ ├── index.html │ │ ├── main.js │ │ ├── package.json │ │ ├── renderer.js │ │ └── url_loader_success.html │ ├── VarArrayBuffer │ │ ├── Makefile │ │ ├── Properties │ │ │ └── AssemblyInfo.cs │ │ ├── README.md │ │ ├── VarArrayBuffer.csproj │ │ ├── VarArrayBufferInstance.cs │ │ ├── background.js │ │ ├── common.js │ │ ├── example.js │ │ ├── icon128.png │ │ ├── index.html │ │ ├── main.js │ │ ├── manifest.json │ │ ├── package.json │ │ └── renderer.js │ ├── VideoEncode │ │ ├── IVFWriter.cs │ │ ├── Makefile │ │ ├── Properties │ │ │ └── AssemblyInfo.cs │ │ ├── README.md │ │ ├── VideoEncode.cs │ │ ├── VideoEncode.csproj │ │ ├── background.js │ │ ├── common.js │ │ ├── example.js │ │ ├── icon128.png │ │ ├── index.html │ │ ├── main.js │ │ ├── package.json │ │ └── renderer.js │ └── WebSocket │ │ ├── Makefile │ │ ├── Properties │ │ └── AssemblyInfo.cs │ │ ├── README.md │ │ ├── WebSocket.cs │ │ ├── WebSocket.csproj │ │ ├── background.js │ │ ├── common.js │ │ ├── example.js │ │ ├── icon128.png │ │ ├── index.html │ │ ├── main.js │ │ ├── package.json │ │ └── renderer.js ├── dotnet │ └── DotNetSamples │ │ ├── LICENSE.md │ │ ├── index.html │ │ ├── main.js │ │ ├── package.json │ │ ├── readme.md │ │ ├── renderer.js │ │ ├── samples │ │ ├── 101_hello_lambda.js │ │ ├── 102_hello_function.js │ │ ├── 103_hello_file.csx │ │ ├── 103_hello_file.js │ │ ├── 104_add7_class.js │ │ ├── 105_add7_dll.js │ │ ├── 106_marshal_v82clr.js │ │ ├── 107_marshal_clr2v8.js │ │ ├── 108_func.js │ │ ├── 108_lambda.js │ │ ├── 109_sync.js │ │ ├── 110_clr_instance.js │ │ ├── 111_clr_listener.js │ │ ├── 201_worker.js │ │ ├── 202_sql.csx │ │ ├── 202_sql.js │ │ ├── 203_x509store.js │ │ ├── 204_event_log.js │ │ ├── 205_soap.csx │ │ ├── 205_soap.js │ │ ├── 206_registry_read.js │ │ ├── 206_registry_write.js │ │ ├── 207_unzip.js │ │ ├── 207_zip.js │ │ ├── 208_convertImage.js │ │ ├── 209_websocket.js │ │ ├── 210_windows_authentication.js │ │ ├── 211_events.js │ │ ├── 301_cspyfsps.js │ │ ├── Sample105.cs │ │ ├── edge.png │ │ └── readme.txt │ │ └── screenshots │ │ └── DotNetSamples-mac.png └── websharpjs │ ├── electron │ ├── Clipboard │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── .vscode │ │ │ ├── launch.json │ │ │ └── settings.json │ │ ├── .vscodeignore │ │ ├── README.md │ │ ├── clipboard-quickstart.md │ │ ├── images │ │ │ ├── Clipper-mac.png │ │ │ └── Clipper-windows.png │ │ ├── index.html │ │ ├── jsconfig.json │ │ ├── main.js │ │ ├── package.json │ │ ├── renderer.js │ │ └── src │ │ │ ├── Clipper │ │ │ ├── Clipper.cs │ │ │ ├── Clipper.csproj │ │ │ ├── Clipper_macosx.csproj │ │ │ ├── nuget.config │ │ │ └── packages.config │ │ │ └── clipboard.js │ ├── DesktopCapturer │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── .vscode │ │ │ ├── launch.json │ │ │ └── settings.json │ │ ├── .vscodeignore │ │ ├── README.md │ │ ├── desktopcapturer-quickstart.md │ │ ├── index.html │ │ ├── jsconfig.json │ │ ├── main.js │ │ ├── package.json │ │ ├── renderer.js │ │ └── src │ │ │ ├── Capture │ │ │ ├── Capture.cs │ │ │ ├── Capture.csproj │ │ │ ├── Capture_macosx.csproj │ │ │ ├── nuget.config │ │ │ └── packages.config │ │ │ ├── Main │ │ │ ├── MainWindow.cs │ │ │ ├── MainWindow.csproj │ │ │ ├── MainWindow_macosx.csproj │ │ │ ├── nuget.config │ │ │ └── packages.config │ │ │ └── desktopcapturer.js │ ├── Ipc │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── .vscode │ │ │ ├── launch.json │ │ │ └── settings.json │ │ ├── .vscodeignore │ │ ├── README.md │ │ ├── images │ │ │ ├── Ipc-mac.png │ │ │ └── Ipc-windows.png │ │ ├── index.html │ │ ├── ipc-quickstart.md │ │ ├── jsconfig.json │ │ ├── main.js │ │ ├── package.json │ │ ├── renderer.js │ │ └── src │ │ │ ├── Ping │ │ │ ├── Ping.cs │ │ │ ├── Ping.csproj │ │ │ ├── Ping_macosx.csproj │ │ │ ├── nuget.config │ │ │ └── packages.config │ │ │ └── ipc.js │ ├── IpcMain │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── .vscode │ │ │ ├── launch.json │ │ │ └── settings.json │ │ ├── .vscodeignore │ │ ├── README.md │ │ ├── index.html │ │ ├── ipcmain-quickstart.md │ │ ├── jsconfig.json │ │ ├── main.js │ │ ├── package.json │ │ ├── renderer.js │ │ └── src │ │ │ ├── Main │ │ │ ├── MainWindow.cs │ │ │ ├── MainWindow.csproj │ │ │ ├── MainWindow_macosx.csproj │ │ │ ├── nuget.config │ │ │ └── packages.config │ │ │ ├── Ping │ │ │ ├── Ping.cs │ │ │ ├── Ping.csproj │ │ │ ├── Ping_macosx.csproj │ │ │ ├── nuget.config │ │ │ └── packages.config │ │ │ └── ipcmain.js │ ├── TextEditor │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── .vscode │ │ │ ├── launch.json │ │ │ └── settings.json │ │ ├── .vscodeignore │ │ ├── README.md │ │ ├── index.html │ │ ├── jsconfig.json │ │ ├── main.js │ │ ├── package.json │ │ ├── renderer.js │ │ ├── src │ │ │ ├── DialogHelpers │ │ │ │ ├── DialogHelpers.cs │ │ │ │ ├── DialogHelpers.csproj │ │ │ │ ├── DialogHelpers_macosx.csproj │ │ │ │ ├── nuget.config │ │ │ │ └── packages.config │ │ │ └── texteditor.js │ │ └── texteditor-quickstart.md │ ├── browserwindow │ │ └── main │ │ │ ├── .eslintrc.json │ │ │ ├── .gitignore │ │ │ ├── .vscode │ │ │ ├── launch.json │ │ │ └── settings.json │ │ │ ├── .vscodeignore │ │ │ ├── README.md │ │ │ ├── images │ │ │ └── browserwindow-mac.png │ │ │ ├── index.html │ │ │ ├── jsconfig.json │ │ │ ├── main.js │ │ │ ├── mainbrowserwindow-quickstart.md │ │ │ ├── package.json │ │ │ ├── renderer.js │ │ │ └── src │ │ │ ├── MainWindow │ │ │ ├── MainWindow.cs │ │ │ ├── MainWindow.csproj │ │ │ ├── MainWindow_macosx.csproj │ │ │ ├── nuget.config │ │ │ └── packages.config │ │ │ └── mainbrowserwindow.js │ ├── handclaps │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── .vscode │ │ │ ├── launch.json │ │ │ └── settings.json │ │ ├── .vscodeignore │ │ ├── README.md │ │ ├── assets │ │ │ ├── icons │ │ │ │ ├── appicon.ico │ │ │ │ ├── appicon.png │ │ │ │ └── othersizes │ │ │ │ │ ├── 16x16.png │ │ │ │ │ ├── 24x24.png │ │ │ │ │ ├── 32x32.png │ │ │ │ │ ├── 48x48.png │ │ │ │ │ ├── 64x64.png │ │ │ │ │ └── 96x96.png │ │ │ └── narrow-jumbotron.css │ │ ├── handclaps-quickstart.md │ │ ├── images │ │ │ ├── handclaps-install.gif │ │ │ └── handclaps.gif │ │ ├── index.html │ │ ├── jsconfig.json │ │ ├── main.js │ │ ├── package.json │ │ ├── renderer.js │ │ └── src │ │ │ ├── Build.sln │ │ │ ├── ClapsRenderer │ │ │ ├── ClapsRenderer.cs │ │ │ ├── ClapsRenderer.csproj │ │ │ ├── ClapsRenderer.sln │ │ │ ├── nuget.config │ │ │ └── packages.config │ │ │ ├── Main │ │ │ ├── MainWindow.cs │ │ │ ├── MainWindow.csproj │ │ │ ├── MainWindow.sln │ │ │ ├── nuget.config │ │ │ └── packages.config │ │ │ └── handclaps.js │ └── menu │ │ └── ContextMenu │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── .vscode │ │ ├── launch.json │ │ └── settings.json │ │ ├── .vscodeignore │ │ ├── README.md │ │ ├── contextmenu-quickstart.md │ │ ├── index.html │ │ ├── jsconfig.json │ │ ├── main.js │ │ ├── package.json │ │ ├── renderer.js │ │ └── src │ │ ├── ContextMenuRenderer │ │ ├── ContextMenuRenderer.cs │ │ ├── ContextMenuRenderer.csproj │ │ ├── ContextMenuRenderer_macosx.csproj │ │ ├── nuget.config │ │ └── packages.config │ │ └── contextmenu.js │ ├── nodejs │ └── EventEmitter │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── .vscode │ │ ├── launch.json │ │ └── settings.json │ │ ├── .vscodeignore │ │ ├── README.md │ │ ├── eventemitter-quickstart.md │ │ ├── index.html │ │ ├── jsconfig.json │ │ ├── main.js │ │ ├── package.json │ │ ├── renderer.js │ │ └── src │ │ ├── Emitter │ │ ├── Emitter.cs │ │ ├── Emitter.csproj │ │ ├── Emitter_macosx.csproj │ │ ├── nuget.config │ │ └── packages.config │ │ └── eventemitter.js │ └── notifications │ ├── .eslintrc.json │ ├── .gitignore │ ├── .vscode │ ├── launch.json │ └── settings.json │ ├── .vscodeignore │ ├── README.md │ ├── electron-dotnet-quickstart.md │ ├── images │ └── notifications.gif │ ├── index.html │ ├── jsconfig.json │ ├── main.js │ ├── package.json │ ├── renderer.js │ └── src │ ├── icon.png │ ├── notifications.cs │ ├── notifications.js │ └── project.json ├── GettingStarted ├── GettingStarted.csproj ├── GettingStarted.sln ├── HelloWorld.cs ├── LICENSE.md ├── Properties │ └── AssemblyInfo.cs ├── index.html ├── main.js ├── package.json ├── readme.md ├── renderer.js └── screenshots │ ├── GettingStarted.PNG │ └── electron-quick-start.PNG ├── LICENSE ├── Makefile ├── Makefile.win ├── PepperPlugin ├── readme.md └── src │ ├── Makefile │ ├── PPApi │ ├── PPApi.vcxproj │ ├── PPApi.vcxproj.filters │ └── targetver.h │ ├── PepperPlugin.sln │ └── PepperPlugin │ ├── PepperPlugin.cpp │ ├── PepperPlugin.h │ ├── PepperPlugin.vcxproj │ ├── PepperPlugin.vcxproj.filters │ ├── ReadMe.txt │ ├── all_ppapi_c_includes.h │ ├── all_ppapi_cpp_includes.h │ ├── pepper_entrypoints.cpp │ └── pepper_entrypoints.h ├── PepperSharp ├── PepperSharp.csproj ├── Properties │ └── AssemblyInfo.cs ├── binding │ ├── pp_array_output.cs │ ├── pp_bool.cs │ ├── pp_codecs.cs │ ├── pp_completion_callback.cs │ ├── pp_directory_entry.cs │ ├── pp_errors.cs │ ├── pp_file_info.cs │ ├── pp_input_event.cs │ ├── pp_instance.cs │ ├── pp_module.cs │ ├── pp_point.cs │ ├── pp_rect.cs │ ├── pp_resource.cs │ ├── pp_size.cs │ ├── pp_stdint.cs │ ├── pp_time.cs │ ├── pp_touch_point.cs │ ├── pp_var.cs │ ├── ppb_audio.cs │ ├── ppb_audio_buffer.cs │ ├── ppb_audio_config.cs │ ├── ppb_audio_encoder.cs │ ├── ppb_console.cs │ ├── ppb_core.cs │ ├── ppb_file_io.cs │ ├── ppb_file_ref.cs │ ├── ppb_file_system.cs │ ├── ppb_fullscreen.cs │ ├── ppb_gamepad.cs │ ├── ppb_graphics_2d.cs │ ├── ppb_host_resolver.cs │ ├── ppb_image_data.cs │ ├── ppb_input_event.cs │ ├── ppb_instance.cs │ ├── ppb_media_stream_audio_track.cs │ ├── ppb_media_stream_video_track.cs │ ├── ppb_message_loop.cs │ ├── ppb_messaging.cs │ ├── ppb_mouse_cursor.cs │ ├── ppb_mouse_lock.cs │ ├── ppb_net_address.cs │ ├── ppb_network_list.cs │ ├── ppb_network_monitor.cs │ ├── ppb_network_proxy.cs │ ├── ppb_tcp_socket.cs │ ├── ppb_udp_socket.cs │ ├── ppb_url_loader.cs │ ├── ppb_url_request_info.cs │ ├── ppb_url_response_info.cs │ ├── ppb_var.cs │ ├── ppb_var_array.cs │ ├── ppb_var_array_buffer.cs │ ├── ppb_var_dictionary.cs │ ├── ppb_video_decoder.cs │ ├── ppb_video_encoder.cs │ ├── ppb_video_frame.cs │ ├── ppb_view.cs │ ├── ppb_websocket.cs │ ├── ppp_input_event.cs │ ├── ppp_message_handler.cs │ ├── ppp_messaging.cs │ └── ppp_mouse_lock.cs └── src │ ├── ArrayOutput.cs │ ├── Audio.cs │ ├── AudioBuffer.cs │ ├── AudioConfig.cs │ ├── CompletionCallback.cs │ ├── CompletionCallbackWithOutput.cs │ ├── Core.cs │ ├── FileIO.cs │ ├── FileRef.cs │ ├── FileSystem.cs │ ├── Gamepad.cs │ ├── Graphics2D.cs │ ├── ImageData.cs │ ├── InputEvent.cs │ ├── Instance.cs │ ├── MediaStreamAudioTrack.cs │ ├── MediaStreamVideoTrack.cs │ ├── MessageLoop.cs │ ├── MouseLock.cs │ ├── NetAddress.cs │ ├── NetworkList.cs │ ├── NetworkMonitor.cs │ ├── NetworkProxy.cs │ ├── PPPoint.cs │ ├── PPRect.cs │ ├── PPResource.cs │ ├── PPSize.cs │ ├── URLLoader.cs │ ├── URLRequestInfo.cs │ ├── URLResponseInfo.cs │ ├── Var.cs │ ├── VarArray.cs │ ├── VarArrayBuffer.cs │ ├── VarDictionary.cs │ ├── VideoEncoder.cs │ ├── VideoFrame.cs │ ├── View.cs │ ├── WebSocket.cs │ ├── ppb_gamepad_extension.cs │ ├── ppb_host_resolver_extension.cs │ ├── ppb_net_address_extension.cs │ ├── ppb_var_extension.cs │ └── runtime.cs ├── README.md ├── Tools ├── binding │ ├── README.md │ ├── api │ │ ├── pp_array_output.idl │ │ ├── pp_bool.idl │ │ ├── pp_codecs.idl │ │ ├── pp_completion_callback.idl │ │ ├── pp_directory_entry.idl │ │ ├── pp_errors.idl │ │ ├── pp_file_info.idl │ │ ├── pp_input_event.idl │ │ ├── pp_instance.idl │ │ ├── pp_module.idl │ │ ├── pp_point.idl │ │ ├── pp_rect.idl │ │ ├── pp_resource.idl │ │ ├── pp_size.idl │ │ ├── pp_stdint.idl │ │ ├── pp_time.idl │ │ ├── pp_touch_point.idl │ │ ├── pp_var.idl │ │ ├── ppb_audio.idl │ │ ├── ppb_audio_buffer.idl │ │ ├── ppb_audio_config.idl │ │ ├── ppb_audio_encoder.idl │ │ ├── ppb_console.idl │ │ ├── ppb_core.idl │ │ ├── ppb_file_io.idl │ │ ├── ppb_file_ref.idl │ │ ├── ppb_file_system.idl │ │ ├── ppb_fullscreen.idl │ │ ├── ppb_gamepad.idl │ │ ├── ppb_graphics_2d.idl │ │ ├── ppb_host_resolver.idl │ │ ├── ppb_image_data.idl │ │ ├── ppb_input_event.idl │ │ ├── ppb_instance.idl │ │ ├── ppb_media_stream_audio_track.idl │ │ ├── ppb_media_stream_video_track.idl │ │ ├── ppb_message_loop.idl │ │ ├── ppb_messaging.idl │ │ ├── ppb_mouse_cursor.idl │ │ ├── ppb_mouse_lock.idl │ │ ├── ppb_net_address.idl │ │ ├── ppb_network_list.idl │ │ ├── ppb_network_monitor.idl │ │ ├── ppb_network_proxy.idl │ │ ├── ppb_tcp_socket.idl │ │ ├── ppb_udp_socket.idl │ │ ├── ppb_url_loader.idl │ │ ├── ppb_url_request_info.idl │ │ ├── ppb_url_response_info.idl │ │ ├── ppb_var.idl │ │ ├── ppb_var_array.idl │ │ ├── ppb_var_array_buffer.idl │ │ ├── ppb_var_dictionary.idl │ │ ├── ppb_video_decoder.idl │ │ ├── ppb_video_encoder.idl │ │ ├── ppb_video_frame.idl │ │ ├── ppb_view.idl │ │ ├── ppb_websocket.idl │ │ ├── ppp_input_event.idl │ │ ├── ppp_message_handler.idl │ │ ├── ppp_messaging.idl │ │ └── ppp_mouse_lock.idl │ └── generators │ │ ├── OWNERS │ │ ├── generator.py │ │ ├── idl_ast.py │ │ ├── idl_c_header.py │ │ ├── idl_c_proto.py │ │ ├── idl_c_sharp.py │ │ ├── idl_cs_proto.py │ │ ├── idl_diff.py │ │ ├── idl_gen_pepper.py │ │ ├── idl_gen_pnacl.py │ │ ├── idl_gen_wrapper.py │ │ ├── idl_generator.py │ │ ├── idl_lexer.py │ │ ├── idl_lint.py │ │ ├── idl_log.py │ │ ├── idl_namespace.py │ │ ├── idl_node.py │ │ ├── idl_option.py │ │ ├── idl_outfile.py │ │ ├── idl_parser.py │ │ ├── idl_propertynode.py │ │ ├── idl_release.py │ │ ├── idl_tests.py │ │ ├── idl_thunk.py │ │ ├── idl_visitor.py │ │ └── ply │ │ ├── __init__.py │ │ ├── cpp.py │ │ ├── ctokens.py │ │ ├── lex.py │ │ ├── yacc.py │ │ └── ygen.py └── generator-electron-dotnet │ ├── .gitignore │ ├── .travis.yml │ ├── LICENSE │ ├── README.md │ ├── generators │ └── app │ │ ├── env.js │ │ ├── index.js │ │ ├── templates │ │ ├── dotnet-plugin │ │ │ ├── .eslintrc.json │ │ │ ├── README.md │ │ │ ├── electron-dotnet-quickstart.md │ │ │ ├── gitignore │ │ │ ├── index.html │ │ │ ├── jsconfig.json │ │ │ ├── main.js │ │ │ ├── package.json │ │ │ ├── renderer.js │ │ │ ├── src │ │ │ │ ├── dotnet-plugin.cs │ │ │ │ └── project.json │ │ │ ├── vscode │ │ │ │ ├── launch.json │ │ │ │ └── settings.json │ │ │ └── vscodeignore │ │ ├── dotnet-sharp-plugin │ │ │ ├── .eslintrc.json │ │ │ ├── README.md │ │ │ ├── electron-dotnet-quickstart.md │ │ │ ├── gitignore │ │ │ ├── index.html │ │ │ ├── jsconfig.json │ │ │ ├── main.js │ │ │ ├── package.json │ │ │ ├── renderer.js │ │ │ ├── src │ │ │ │ ├── dotnet-plugin.cs │ │ │ │ ├── dotnet.js │ │ │ │ └── project.json │ │ │ ├── vscode │ │ │ │ ├── launch.json │ │ │ │ └── settings.json │ │ │ └── vscodeignore │ │ ├── dotnet-sharp │ │ │ ├── .eslintrc.json │ │ │ ├── README.md │ │ │ ├── electron-dotnet-quickstart.md │ │ │ ├── gitignore │ │ │ ├── index.html │ │ │ ├── jsconfig.json │ │ │ ├── main.js │ │ │ ├── package.json │ │ │ ├── renderer.js │ │ │ ├── src │ │ │ │ └── dotnet.js │ │ │ ├── vscode │ │ │ │ ├── launch.json │ │ │ │ └── settings.json │ │ │ └── vscodeignore │ │ └── dotnet-websharp │ │ │ ├── .eslintrc.json │ │ │ ├── README.md │ │ │ ├── gitignore │ │ │ ├── index.html │ │ │ ├── jsconfig.json │ │ │ ├── main.js │ │ │ ├── package.json │ │ │ ├── renderer.js │ │ │ ├── src │ │ │ ├── build.sln │ │ │ ├── nuget.config │ │ │ ├── packages.config │ │ │ ├── websharp.cs │ │ │ ├── websharp.csproj │ │ │ ├── websharp.js │ │ │ ├── websharp.sln │ │ │ ├── websharp_main.cs │ │ │ ├── websharp_main.csproj │ │ │ └── websharp_main.sln │ │ │ ├── vscode │ │ │ ├── launch.json │ │ │ └── settings.json │ │ │ ├── vscodeignore │ │ │ └── websharp-quickstart.md │ │ └── validator.js │ ├── jsconfig.json │ ├── package.json │ ├── test │ ├── fixtures │ │ └── tmsnippets │ │ │ ├── Assert Equal.tmSnippet │ │ │ ├── Assert Not Equal.tmSnippet │ │ │ └── Assert.tmSnippet │ └── test.js │ ├── thirdpartynotices.txt │ └── yoelectrondotnet.png ├── docs ├── README.md ├── bindings │ ├── README.md │ └── electron │ │ ├── README.md │ │ └── api │ │ ├── app.md │ │ ├── browser-window.md │ │ ├── clipboard.md │ │ ├── crash-reporter.md │ │ ├── desktop-capturer.md │ │ ├── dialog.md │ │ ├── download-item.md │ │ ├── global-shortcut.md │ │ ├── ipc-main.md │ │ ├── ipc-renderer.md │ │ ├── menu-item.md │ │ ├── menu.md │ │ ├── native-image.md │ │ ├── power-monitor.md │ │ ├── power-save-blocker.md │ │ ├── screen.md │ │ ├── session.md │ │ ├── shell.md │ │ ├── tray.md │ │ ├── web-contents.md │ │ └── web-request.md ├── en │ ├── PepperSharp │ │ ├── APIArgumentAdapter`1.xml │ │ ├── ArrayOutputAdapterBase`1.xml │ │ ├── Audio.xml │ │ ├── AudioBuffer.xml │ │ ├── AudioBufferSampleRate.xml │ │ ├── AudioBufferSampleSize.xml │ │ ├── AudioConfig.xml │ │ ├── AudioFrameSize.xml │ │ ├── AudioSampleRate.xml │ │ ├── BlockUntilComplete.xml │ │ ├── CompletionCallback.xml │ │ ├── CompletionCallbackFunc.xml │ │ ├── CompletionCallbackFunc`1.xml │ │ ├── CompletionCallbackFunc`2.xml │ │ ├── CompletionCallbackWithOutputFunc`1.xml │ │ ├── CompletionCallbackWithOutputFunc`2.xml │ │ ├── CompletionCallbackWithOutputFunc`3.xml │ │ ├── CompletionCallbackWithOutput`1.xml │ │ ├── CompletionCallbackWithOutput`2.xml │ │ ├── CompletionCallbackWithOutput`3.xml │ │ ├── CompletionCallback`1.xml │ │ ├── CompletionCallback`2.xml │ │ ├── Core.xml │ │ ├── DirectoryEntry.xml │ │ ├── FileIO.xml │ │ ├── FileIOResult.xml │ │ ├── FileInfo.xml │ │ ├── FileOpenFlags.xml │ │ ├── FileRef+DirectoryEntries.xml │ │ ├── FileRef.xml │ │ ├── FileSystem.xml │ │ ├── FileSystemType.xml │ │ ├── FileType.xml │ │ ├── GamepadSampleData.xml │ │ ├── GamepadsSampleData.xml │ │ ├── Graphics2D.xml │ │ ├── HardwareAcceleration.xml │ │ ├── IMEInputEvent.xml │ │ ├── INativeObject.xml │ │ ├── ImageData.xml │ │ ├── InputEvent.xml │ │ ├── Instance+InitializeDelegateAndHandler.xml │ │ ├── Instance+InitializeEventArgs.xml │ │ ├── Instance+KeyboardEventArgs.xml │ │ ├── Instance+MouseEventArgs.xml │ │ ├── Instance+WheelEventArgs.xml │ │ ├── Instance.xml │ │ ├── KeyboardInputEvent.xml │ │ ├── MakeDirectoryFlags.xml │ │ ├── MediaStreamAudioTrack+AudioBufferInfo.xml │ │ ├── MediaStreamAudioTrack.xml │ │ ├── MediaStreamAudioTrackAttributes.xml │ │ ├── MediaStreamVideoTrack.xml │ │ ├── MediaStreamVideoTrackAttributes.xml │ │ ├── MessageLoop.xml │ │ ├── MouseInputEvent.xml │ │ ├── MouseLock.xml │ │ ├── NativeInstance.xml │ │ ├── NetAddress.xml │ │ ├── NetAddressFamily.xml │ │ ├── NetworkInterface.xml │ │ ├── NetworkInterfaceState.xml │ │ ├── NetworkInterfaceType.xml │ │ ├── NetworkList.xml │ │ ├── NetworkListInfo.xml │ │ ├── NetworkMonitor.xml │ │ ├── NetworkProxy+ProxyInfo.xml │ │ ├── NetworkProxy.xml │ │ ├── OutputAdapterBase`1.xml │ │ ├── PPArrayOutput.xml │ │ ├── PPArrayOutputGetDataBuffer.xml │ │ ├── PPAudioBitstreamBuffer.xml │ │ ├── PPAudioBufferSampleRate.xml │ │ ├── PPAudioBufferSampleSize.xml │ │ ├── PPAudioFrameSize.xml │ │ ├── PPAudioProfile.xml │ │ ├── PPAudioProfileDescription.xml │ │ ├── PPAudioSampleRate.xml │ │ ├── PPBAudioCallback.xml │ │ ├── PPBitstreamBuffer.xml │ │ ├── PPBool.xml │ │ ├── PPCompletionCallback.xml │ │ ├── PPCompletionCallbackFlag.xml │ │ ├── PPCompletionCallbackFunc.xml │ │ ├── PPDirectoryEntry.xml │ │ ├── PPError.xml │ │ ├── PPFileInfo.xml │ │ ├── PPFileOpenFlags.xml │ │ ├── PPFileSystemType.xml │ │ ├── PPFileType.xml │ │ ├── PPFloatPoint.xml │ │ ├── PPFloatRect.xml │ │ ├── PPFloatSize.xml │ │ ├── PPGamepadSampleData.xml │ │ ├── PPGamepadsSampleData.xml │ │ ├── PPHardwareAcceleration.xml │ │ ├── PPHostResolverFlag.xml │ │ ├── PPHostResolverHint.xml │ │ ├── PPImageDataDesc.xml │ │ ├── PPImageDataFormat.xml │ │ ├── PPInputEventCharacter.xml │ │ ├── PPInputEventClass.xml │ │ ├── PPInputEventKey.xml │ │ ├── PPInputEventModifier.xml │ │ ├── PPInputEventMouse.xml │ │ ├── PPInputEventMouseButton.xml │ │ ├── PPInputEventType.xml │ │ ├── PPInputEventWheel.xml │ │ ├── PPInstance.xml │ │ ├── PPLogLevel.xml │ │ ├── PPMakeDirectoryFlags.xml │ │ ├── PPMediaStreamAudioTrackAttrib.xml │ │ ├── PPMediaStreamVideoTrackAttrib.xml │ │ ├── PPModule.xml │ │ ├── PPMouseCursorType.xml │ │ ├── PPNetAddressFamily.xml │ │ ├── PPNetAddressIPv4.xml │ │ ├── PPNetAddressIPv6.xml │ │ ├── PPNetworkListState.xml │ │ ├── PPNetworkListType.xml │ │ ├── PPPoint.xml │ │ ├── PPRect.xml │ │ ├── PPResource.xml │ │ ├── PPSize.xml │ │ ├── PPTCPSocketOption.xml │ │ ├── PPTime.xml │ │ ├── PPTimeDelta.xml │ │ ├── PPTimeTicks.xml │ │ ├── PPTouchListType.xml │ │ ├── PPTouchPoint.xml │ │ ├── PPUDPSocketOption.xml │ │ ├── PPURLRequestProperty.xml │ │ ├── PPURLResponseProperty.xml │ │ ├── PPVar.xml │ │ ├── PPVarType.xml │ │ ├── PPVarValue.xml │ │ ├── PPVideoFrameFormat.xml │ │ ├── PPVideoPicture.xml │ │ ├── PPVideoPicture01.xml │ │ ├── PPVideoProfile.xml │ │ ├── PPVideoProfileDescription.xml │ │ ├── PPVideoProfileDescription01.xml │ │ ├── PPWebSocketCloseCode.xml │ │ ├── PPWebSocketReadyState.xml │ │ ├── PassRef.xml │ │ ├── Resource.xml │ │ ├── TouchInputEvent.xml │ │ ├── URLLoader.xml │ │ ├── URLRequestInfo.xml │ │ ├── URLRequestProperty.xml │ │ ├── URLResponseInfo.xml │ │ ├── URLResponseProperty.xml │ │ ├── Var.xml │ │ ├── VarArray.xml │ │ ├── VarArrayBuffer.xml │ │ ├── VarDictionary.xml │ │ ├── VideoEncoder+BitstreamBufferInfo.xml │ │ ├── VideoEncoder+VideoProfileInfo.xml │ │ ├── VideoEncoder.xml │ │ ├── VideoFrame.xml │ │ ├── VideoFrameFormat.xml │ │ ├── VideoFrameInfo.xml │ │ ├── VideoProfile.xml │ │ ├── VideoProfileDescription.xml │ │ ├── View.xml │ │ ├── WebSocket.xml │ │ ├── WebSocketCloseStatus.xml │ │ ├── WebSocketMessageType.xml │ │ ├── WebSocketReceiveResult.xml │ │ ├── WebSocketState.xml │ │ └── WheelInputEvent.xml │ ├── index.xml │ └── ns-PepperSharp.xml ├── getting-started │ ├── README.md │ ├── getting-started-dev-mac.md │ ├── getting-started-dev-windows.md │ ├── getting-started-websharp-building-assemblies.md │ ├── getting-started-websharp-electron-application.md │ └── screenshots │ │ ├── hello-world-console.png │ │ ├── hello-world.png │ │ ├── mono-path-win32.png │ │ ├── yogen-wsa-mac-ask.PNG │ │ ├── yogen-wsa-mac-finish.PNG │ │ ├── yogen-wsa-mac-install.png │ │ └── yogen-wsa-mac.png ├── tutorials │ ├── DOM │ │ ├── README.md │ │ ├── browserinfo │ │ │ ├── .eslintrc.json │ │ │ ├── .gitignore │ │ │ ├── .vscode │ │ │ │ ├── launch.json │ │ │ │ └── settings.json │ │ │ ├── .vscodeignore │ │ │ ├── README.md │ │ │ ├── browserinformation-quickstart.md │ │ │ ├── images │ │ │ │ ├── browserinformation-win.png │ │ │ │ └── browserinformation.png │ │ │ ├── index.html │ │ │ ├── jsconfig.json │ │ │ ├── main.js │ │ │ ├── package.json │ │ │ ├── renderer.js │ │ │ └── src │ │ │ │ ├── Information │ │ │ │ ├── Information.cs │ │ │ │ ├── Information.csproj │ │ │ │ ├── Information_macosx.csproj │ │ │ │ ├── nuget.config │ │ │ │ └── packages.config │ │ │ │ ├── Main │ │ │ │ ├── MainWindow.cs │ │ │ │ ├── MainWindow.csproj │ │ │ │ ├── MainWindow_macosx.csproj │ │ │ │ ├── nuget.config │ │ │ │ └── packages.config │ │ │ │ └── browserinformation.js │ │ ├── domelement │ │ │ ├── .eslintrc.json │ │ │ ├── .gitignore │ │ │ ├── .vscode │ │ │ │ ├── launch.json │ │ │ │ └── settings.json │ │ │ ├── .vscodeignore │ │ │ ├── README.md │ │ │ ├── domelement-quickstart.md │ │ │ ├── images │ │ │ │ ├── elementtinkering-win.png │ │ │ │ └── elementtinkering.png │ │ │ ├── index.html │ │ │ ├── jsconfig.json │ │ │ ├── main.js │ │ │ ├── package.json │ │ │ ├── renderer.js │ │ │ ├── sections │ │ │ │ ├── section1.html │ │ │ │ └── section2.html │ │ │ └── src │ │ │ │ ├── ElementTinkerer │ │ │ │ ├── ElementTinkerer.cs │ │ │ │ ├── ElementTinkerer.csproj │ │ │ │ ├── ElementTinkerer_macosx.csproj │ │ │ │ ├── nuget.config │ │ │ │ └── packages.config │ │ │ │ ├── Main │ │ │ │ ├── MainWindow.cs │ │ │ │ ├── MainWindow.csproj │ │ │ │ ├── MainWindow_macosx.csproj │ │ │ │ ├── nuget.config │ │ │ │ └── packages.config │ │ │ │ └── domelement.js │ │ ├── domtree │ │ │ ├── .eslintrc.json │ │ │ ├── .gitignore │ │ │ ├── .vscode │ │ │ │ ├── launch.json │ │ │ │ └── settings.json │ │ │ ├── .vscodeignore │ │ │ ├── README.md │ │ │ ├── domtree-quickstart.md │ │ │ ├── images │ │ │ │ ├── domtraversal-win.png │ │ │ │ └── domtraversal.png │ │ │ ├── index.html │ │ │ ├── jsconfig.json │ │ │ ├── main.js │ │ │ ├── package.json │ │ │ ├── renderer.js │ │ │ ├── sections │ │ │ │ └── section1.html │ │ │ └── src │ │ │ │ ├── DOMInfo │ │ │ │ ├── DOMInfo.cs │ │ │ │ ├── DOMInfo.csproj │ │ │ │ ├── DOMInfo_macosx.csproj │ │ │ │ ├── nuget.config │ │ │ │ └── packages.config │ │ │ │ ├── Main │ │ │ │ ├── MainWindow.cs │ │ │ │ ├── MainWindow.csproj │ │ │ │ ├── MainWindow_macosx.csproj │ │ │ │ ├── nuget.config │ │ │ │ └── packages.config │ │ │ │ └── domtree.js │ │ ├── dragndrop │ │ │ ├── .eslintrc.json │ │ │ ├── .gitignore │ │ │ ├── .vscode │ │ │ │ ├── launch.json │ │ │ │ ├── settings.json │ │ │ │ └── tasks.json │ │ │ ├── .vscodeignore │ │ │ ├── README.md │ │ │ ├── dragndrop-quickstart.md │ │ │ ├── images │ │ │ │ └── dragndrop.gif │ │ │ ├── index.html │ │ │ ├── jsconfig.json │ │ │ ├── main.js │ │ │ ├── package.json │ │ │ ├── renderer.js │ │ │ └── src │ │ │ │ ├── Build.sln │ │ │ │ ├── Dragger │ │ │ │ ├── Dragger.cs │ │ │ │ ├── Dragger.csproj │ │ │ │ ├── Dragger.sln │ │ │ │ ├── nuget.config │ │ │ │ └── packages.config │ │ │ │ ├── Main │ │ │ │ ├── MainWindow.cs │ │ │ │ ├── MainWindow.csproj │ │ │ │ ├── MainWindow.sln │ │ │ │ ├── nuget.config │ │ │ │ └── packages.config │ │ │ │ └── dragndrop.js │ │ └── overview.md │ ├── README.md │ ├── appicon │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── .vscode │ │ │ ├── launch.json │ │ │ └── settings.json │ │ ├── .vscodeignore │ │ ├── README.md │ │ ├── appicon-quickstart.md │ │ ├── images │ │ │ ├── mac-appicon-main.gif │ │ │ └── mac-appicon-managed.gif │ │ ├── index.html │ │ ├── jsconfig.json │ │ ├── main.js │ │ ├── package.json │ │ ├── renderer.js │ │ ├── resources │ │ │ ├── appicon.ico │ │ │ └── appicon.png │ │ └── src │ │ │ ├── Iconic │ │ │ ├── Iconic.cs │ │ │ ├── Iconic.csproj │ │ │ ├── Iconic_macosx.csproj │ │ │ ├── nuget.config │ │ │ └── packages.config │ │ │ ├── Main │ │ │ ├── MainWindow.cs │ │ │ ├── MainWindow.csproj │ │ │ ├── MainWindow_macosx.csproj │ │ │ ├── nuget.config │ │ │ └── packages.config │ │ │ └── appicon.js │ ├── convert │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── .vscode │ │ │ ├── launch.json │ │ │ ├── settings.json │ │ │ └── tasks.json │ │ ├── .vscodeignore │ │ ├── Convert.njsproj │ │ ├── Convert.sln │ │ ├── README.md │ │ ├── assets │ │ │ ├── css │ │ │ │ └── styles.css │ │ │ └── icons │ │ │ │ ├── appicon.icns │ │ │ │ ├── appicon.ico │ │ │ │ └── images │ │ │ │ └── appicon_256x256.png │ │ ├── build │ │ │ ├── background.png │ │ │ ├── icon.icns │ │ │ └── icon.ico │ │ ├── convert-quickstart.md │ │ ├── images │ │ │ ├── asar-screenshot-finder.png │ │ │ └── mac-codesign.png │ │ ├── index.html │ │ ├── jsconfig.json │ │ ├── main.js │ │ ├── package.json │ │ ├── renderer.js │ │ ├── src │ │ │ ├── Build.sln │ │ │ ├── ConvertUI │ │ │ │ ├── ConvertUI.cs │ │ │ │ ├── ConvertUI.csproj │ │ │ │ ├── ConvertUI.sln │ │ │ │ ├── nuget.config │ │ │ │ └── packages.config │ │ │ ├── Main │ │ │ │ ├── Convert.cs │ │ │ │ ├── MainWindow.cs │ │ │ │ ├── MainWindow.csproj │ │ │ │ ├── MainWindow.sln │ │ │ │ ├── nuget.config │ │ │ │ └── packages.config │ │ │ ├── convert.js │ │ │ └── lib │ │ │ │ ├── MediaToolkit.dll │ │ │ │ └── MediaToolkit.pdb │ │ └── yarn.lock │ ├── downloaditem │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── .vscode │ │ │ ├── launch.json │ │ │ └── settings.json │ │ ├── .vscodeignore │ │ ├── README.md │ │ ├── downloaditem-quickstart.md │ │ ├── images │ │ │ └── progressbar.gif │ │ ├── index.html │ │ ├── jsconfig.json │ │ ├── main.js │ │ ├── package.json │ │ ├── renderer.js │ │ └── src │ │ │ ├── Main │ │ │ ├── MainWindow.cs │ │ │ ├── MainWindow.csproj │ │ │ ├── MainWindow_macosx.csproj │ │ │ ├── nuget.config │ │ │ └── packages.config │ │ │ ├── SessionDownload │ │ │ ├── SessionDownload.cs │ │ │ ├── SessionDownload.csproj │ │ │ ├── SessionDownload_macosx.csproj │ │ │ ├── nuget.config │ │ │ └── packages.config │ │ │ └── downloaditem.js │ ├── geolocation │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── .vscode │ │ │ ├── launch.json │ │ │ └── settings.json │ │ ├── .vscodeignore │ │ ├── GeolocationAPI.md │ │ ├── GeolocationAPI_1.md │ │ ├── GeolocationAPI_assemblies.md │ │ ├── GeolocationAPI_packager.md │ │ ├── README.md │ │ ├── geolocation-quickstart.md │ │ ├── images │ │ │ ├── error.png │ │ │ ├── finder-app.png │ │ │ ├── geolocation-mac.png │ │ │ ├── geolocation-run1.gif │ │ │ ├── icons │ │ │ │ ├── appicon.icns │ │ │ │ ├── appicon.ico │ │ │ │ └── appicon.png │ │ │ ├── map.png │ │ │ └── template-geolocation.gif │ │ ├── index.html │ │ ├── jsconfig.json │ │ ├── main.js │ │ ├── package.json │ │ ├── renderer.js │ │ └── src │ │ │ ├── .DS_Store │ │ │ ├── Build.sln │ │ │ ├── Location │ │ │ ├── GeoLocationAPI.cs │ │ │ ├── Location.cs │ │ │ ├── Location.csproj │ │ │ ├── Location.sln │ │ │ ├── nuget.config │ │ │ └── packages.config │ │ │ ├── Main │ │ │ ├── MainWindow.cs │ │ │ ├── MainWindow.csproj │ │ │ ├── MainWindow.sln │ │ │ ├── nuget.config │ │ │ └── packages.config │ │ │ └── geolocation.js │ ├── graceful1 │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── .vscode │ │ │ ├── launch.json │ │ │ └── settings.json │ │ ├── .vscodeignore │ │ ├── README.md │ │ ├── gracefulload-quickstart.md │ │ ├── images │ │ │ ├── flicker-end.gif │ │ │ └── flicker.gif │ │ ├── index.html │ │ ├── jsconfig.json │ │ ├── main.js │ │ ├── package.json │ │ ├── renderer.js │ │ └── src │ │ │ ├── GracefulLoad │ │ │ ├── GracefulLoad.cs │ │ │ ├── GracefulLoad.csproj │ │ │ ├── GracefulLoad_macosx.csproj │ │ │ ├── nuget.config │ │ │ └── packages.config │ │ │ ├── Main │ │ │ ├── MainWindow.cs │ │ │ ├── MainWindow.csproj │ │ │ ├── MainWindow_macosx.csproj │ │ │ ├── nuget.config │ │ │ └── packages.config │ │ │ └── gracefulload.js │ ├── graceful2 │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── .vscode │ │ │ ├── launch.json │ │ │ └── settings.json │ │ ├── .vscodeignore │ │ ├── README.md │ │ ├── gracefulload-quickstart.md │ │ ├── images │ │ │ ├── flicker-bg.gif │ │ │ ├── flicker-end.gif │ │ │ └── flicker.gif │ │ ├── index.html │ │ ├── jsconfig.json │ │ ├── main.js │ │ ├── package.json │ │ ├── renderer.js │ │ └── src │ │ │ ├── GracefulLoad │ │ │ ├── GracefulLoad.cs │ │ │ ├── GracefulLoad.csproj │ │ │ ├── GracefulLoad_macosx.csproj │ │ │ ├── nuget.config │ │ │ └── packages.config │ │ │ ├── Main │ │ │ ├── MainWindow.cs │ │ │ ├── MainWindow.csproj │ │ │ ├── MainWindow_macosx.csproj │ │ │ ├── nuget.config │ │ │ └── packages.config │ │ │ └── gracefulload.js │ ├── printtopdf │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── .vscode │ │ │ ├── launch.json │ │ │ └── settings.json │ │ ├── .vscodeignore │ │ ├── README.md │ │ ├── index.html │ │ ├── jsconfig.json │ │ ├── main.js │ │ ├── package.json │ │ ├── printtopdf-quickstart.md │ │ ├── renderer.js │ │ └── src │ │ │ ├── Main │ │ │ ├── MainWindow.cs │ │ │ ├── MainWindow.csproj │ │ │ ├── MainWindow_macosx.csproj │ │ │ ├── nuget.config │ │ │ └── packages.config │ │ │ ├── PdfRenderer │ │ │ ├── PdfRenderer.cs │ │ │ ├── PdfRenderer.csproj │ │ │ ├── PdfRenderer_macosx.csproj │ │ │ ├── nuget.config │ │ │ └── packages.config │ │ │ └── printtopdf.js │ ├── session │ │ └── permissions │ │ │ ├── permissionrequest │ │ │ ├── .eslintrc.json │ │ │ ├── .gitignore │ │ │ ├── .vscode │ │ │ │ ├── launch.json │ │ │ │ └── settings.json │ │ │ ├── .vscodeignore │ │ │ ├── README.md │ │ │ ├── index.html │ │ │ ├── jsconfig.json │ │ │ ├── main.js │ │ │ ├── package.json │ │ │ ├── permissionrequesthandler-quickstart.md │ │ │ ├── renderer.js │ │ │ └── src │ │ │ │ ├── Main │ │ │ │ ├── MainWindow.cs │ │ │ │ ├── MainWindow.csproj │ │ │ │ ├── MainWindow_macosx.csproj │ │ │ │ ├── nuget.config │ │ │ │ └── packages.config │ │ │ │ ├── Request │ │ │ │ ├── Request.cs │ │ │ │ ├── Request.csproj │ │ │ │ ├── Request_macosx.csproj │ │ │ │ ├── nuget.config │ │ │ │ └── packages.config │ │ │ │ └── permissionrequesthandler.js │ │ │ └── pointer-lock │ │ │ ├── .eslintrc.json │ │ │ ├── .gitignore │ │ │ ├── .vscode │ │ │ ├── launch.json │ │ │ └── settings.json │ │ │ ├── .vscodeignore │ │ │ ├── README.md │ │ │ ├── images │ │ │ ├── messagebox.png │ │ │ └── pointer-lock.gif │ │ │ ├── index.html │ │ │ ├── jsconfig.json │ │ │ ├── main.js │ │ │ ├── package.json │ │ │ ├── pointerlock-quickstart.md │ │ │ ├── renderer.js │ │ │ ├── src │ │ │ ├── Main │ │ │ │ ├── MainWindow.cs │ │ │ │ ├── MainWindow.csproj │ │ │ │ ├── MainWindow_macosx.csproj │ │ │ │ ├── nuget.config │ │ │ │ └── packages.config │ │ │ ├── Pointer │ │ │ │ ├── Pointer.cs │ │ │ │ ├── Pointer.csproj │ │ │ │ ├── Pointer_macosx.csproj │ │ │ │ ├── nuget.config │ │ │ │ └── packages.config │ │ │ └── pointerlock.js │ │ │ └── style.css │ ├── single │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── .vscode │ │ │ ├── launch.json │ │ │ └── settings.json │ │ ├── .vscodeignore │ │ ├── README.md │ │ ├── images │ │ │ ├── create-project.gif │ │ │ └── single-instance.gif │ │ ├── index.html │ │ ├── jsconfig.json │ │ ├── main.js │ │ ├── package.json │ │ ├── renderer.js │ │ ├── singleinstance-quickstart.md │ │ └── src │ │ │ ├── Main │ │ │ ├── MainWindow.cs │ │ │ ├── MainWindow.csproj │ │ │ ├── MainWindow_macosx.csproj │ │ │ ├── nuget.config │ │ │ └── packages.config │ │ │ ├── Single │ │ │ ├── Single.cs │ │ │ ├── Single.csproj │ │ │ ├── Single_macosx.csproj │ │ │ ├── nuget.config │ │ │ └── packages.config │ │ │ └── singleinstance.js │ └── tray │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── .vscode │ │ ├── launch.json │ │ └── settings.json │ │ ├── .vscodeignore │ │ ├── README.md │ │ ├── assets │ │ └── icons │ │ │ ├── appicon.ico │ │ │ ├── appicon.png │ │ │ ├── appicon_16x16.png │ │ │ └── appicon_16x16@2x.png │ │ ├── index.html │ │ ├── jsconfig.json │ │ ├── main.js │ │ ├── minimizetotray-quickstart.md │ │ ├── package.json │ │ ├── renderer.js │ │ └── src │ │ ├── Main │ │ ├── MainWindow.cs │ │ ├── MainWindow.csproj │ │ ├── MainWindow_macosx.csproj │ │ ├── nuget.config │ │ └── packages.config │ │ ├── MinimizeToTray │ │ ├── MinimizeToTray.cs │ │ ├── MinimizeToTray.csproj │ │ ├── MinimizeToTray_macosx.csproj │ │ ├── nuget.config │ │ └── packages.config │ │ └── minimizetotray.js └── vsc │ ├── example-hello-world.md │ ├── screenshots │ ├── NuGetSourceAddPackage-VSM.png │ ├── NuGetSourcePreferences-VSM.png │ ├── NuGetSources-VSM.png │ ├── PackageSourceDropDown.png │ ├── PackageSourceLocalWebSharp.png │ ├── PackageSourceLocalWebSharpSelect.png │ ├── PackageSourceSettings.png │ ├── debug-drop-down.png │ ├── debug-windows-main-breakpoint.png │ ├── debug-windows-main.png │ ├── exampe-nuget-config.png │ ├── hello-world-console.png │ ├── hello-world.png │ ├── main-js-breakpoint.PNG │ ├── mono-required.png │ ├── nodejs_debugicon.png │ ├── scriptingelectron-console.png │ ├── scriptingelectron-console2.png │ ├── scriptingelectron-console3.png │ ├── scriptingelectron-menuitem-clicked.png │ ├── scriptingelectron.png │ ├── scriptingjs-browser.png │ ├── scriptingjs-console.png │ ├── scriptingjs-console2.png │ ├── scriptingjs-console3.png │ ├── scriptingjs.png │ ├── yogen-mac-ask-electron.PNG │ ├── yogen-mac-ask.PNG │ ├── yogen-mac-finish-electron.PNG │ ├── yogen-mac-finish.PNG │ ├── yogen-mac-install-electron.png │ ├── yogen-mac-install.png │ ├── yogen-mac.png │ ├── yogen.PNG │ ├── yogenask.PNG │ ├── yogenfinish.PNG │ └── yogeninstall.PNG │ ├── vsc-debug.md │ ├── vsc-electron-scripting.md │ ├── vsc-nodejs-scripting.md │ └── vsc-package-sources.md ├── electron-dotnet ├── .gitignore ├── Dockerfile ├── LICENSE.txt ├── README.md ├── binding.gyp ├── lib │ ├── double_edge.js │ ├── electron-dotnet.js │ ├── embed.js │ ├── register.js │ └── websharpjs.js ├── package.json ├── src │ ├── common │ │ ├── clrfuncreflectionwrap.cs │ │ ├── edge.cpp │ │ ├── edge_common.h │ │ ├── utils.cpp │ │ └── v8synchronizationcontext.cpp │ ├── dotnet │ │ ├── clractioncontext.cpp │ │ ├── clrfunc.cpp │ │ ├── clrfuncinvokecontext.cpp │ │ ├── clrfuncreflectionwrap.cpp │ │ ├── edge.h │ │ ├── nodejsfunc.cpp │ │ ├── nodejsfuncinvokecontext.cpp │ │ ├── persistentdisposecontext.cpp │ │ └── utils.cpp │ ├── double │ │ └── Edge.js │ │ │ ├── dotnet │ │ │ └── EdgeJs.cs │ │ │ ├── dotnetcore │ │ │ ├── coreclrembedding.cs │ │ │ ├── nodejsfunc.cs │ │ │ ├── nodejsfuncinvokecontext.cs │ │ │ └── semversion.cs │ │ │ └── project.json │ ├── mono │ │ ├── clractioncontext.cpp │ │ ├── clrfunc.cpp │ │ ├── clrfuncinvokecontext.cpp │ │ ├── clrfuncinvokecontext.cs │ │ ├── dictionary.cpp │ │ ├── edge.h │ │ ├── monoembedding.cpp │ │ ├── monoembedding.cs │ │ ├── nodejsfunc.cpp │ │ ├── nodejsfunc.cs │ │ ├── nodejsfuncinvokecontext.cpp │ │ ├── nodejsfuncinvokecontext.cs │ │ ├── task.cpp │ │ └── utils.cpp │ ├── websharp-cs │ │ ├── LICENSE.txt │ │ ├── README.md │ │ └── src │ │ │ └── websharp-cs │ │ │ ├── Properties │ │ │ └── AssemblyInfo.cs │ │ │ ├── WebSharpCompiler.cs │ │ │ ├── packages.config │ │ │ ├── targets │ │ │ └── PublishAssemblies.targets │ │ │ ├── websharp-cs.csproj │ │ │ └── websharp-cs.sln │ └── websharpjs │ │ └── WebSharp.js │ │ ├── Properties │ │ └── AssemblyInfo.cs │ │ ├── WebSharp.js.csproj │ │ ├── WebSharp.js.nuspec │ │ ├── WebSharp.js.sln │ │ ├── dotnet │ │ ├── WebSharpJs.DOM │ │ │ ├── BrowserInformation.cs │ │ │ ├── DOMObjectProxy.cs │ │ │ ├── DragNDropInterface.cs │ │ │ ├── Events │ │ │ │ └── Event.cs │ │ │ ├── HtmlDocument.cs │ │ │ ├── HtmlElement.cs │ │ │ ├── HtmlEventArgs.cs │ │ │ ├── HtmlEventNames.cs │ │ │ ├── HtmlObject.cs │ │ │ ├── HtmlPage.cs │ │ │ ├── HtmlWindow.cs │ │ │ ├── HttpUtility.cs │ │ │ ├── MouseButtons.cs │ │ │ └── WebSharpHtmlEvent.cs │ │ ├── WebSharpJs.Electron │ │ │ ├── Accelerator.cs │ │ │ ├── App.cs │ │ │ ├── BrowserWindow.cs │ │ │ ├── Clipboard.cs │ │ │ ├── Cookies.cs │ │ │ ├── CrashReporter.cs │ │ │ ├── DesktopCapturer.cs │ │ │ ├── Dialog.cs │ │ │ ├── Dock.cs │ │ │ ├── DownloadItem.cs │ │ │ ├── GlobalShortcut.cs │ │ │ ├── IpcMain.cs │ │ │ ├── IpcRenderer.cs │ │ │ ├── KeyboardUtilities.cs │ │ │ ├── Menu.cs │ │ │ ├── MenuItem.cs │ │ │ ├── NativeImage.cs │ │ │ ├── PowerMonitor.cs │ │ │ ├── PowerSaveBlocker.cs │ │ │ ├── Remote.cs │ │ │ ├── Screen.cs │ │ │ ├── Session.cs │ │ │ ├── Shell.cs │ │ │ ├── Structures.cs │ │ │ ├── Tray.cs │ │ │ ├── WebContents.cs │ │ │ └── WebRequest.cs │ │ ├── WebSharpJs.NodeJS │ │ │ ├── Console.cs │ │ │ ├── EventEmitter.cs │ │ │ ├── NodeJsObject.cs │ │ │ ├── NodeObjectProxy.cs │ │ │ └── Require.cs │ │ ├── WebSharpJs.Script │ │ │ ├── Callback │ │ │ │ ├── ICallbackResult.cs │ │ │ │ ├── IScriptObjectCallback.cs │ │ │ │ ├── IScriptObjectCallbackProxy.cs │ │ │ │ ├── ScriptObjectCallback.cs │ │ │ │ └── ScriptObjectCallbackResult.cs │ │ │ ├── IScriptObjectProxy.cs │ │ │ ├── SciptObjectProxy.cs │ │ │ ├── ScriptObject.cs │ │ │ ├── ScriptObjectCollection.cs │ │ │ ├── ScriptObjectHelper.cs │ │ │ ├── ScriptObjectUtilities.cs │ │ │ ├── ScriptParm.cs │ │ │ ├── ScriptableMemberAttribute.cs │ │ │ ├── ScriptableTypeAttribute.cs │ │ │ ├── WebSharpEvent.cs │ │ │ └── WebSharpObject.cs │ │ ├── WebSharpJs.cs │ │ └── WebSharpJsBridge.cs │ │ ├── packages.config │ │ └── targets │ │ └── PublishAssemblies.targets └── tools │ ├── build.bat │ ├── build_double.bat │ ├── build_peppersharp.bat │ ├── build_websharpjs.bat │ ├── buildall.bat │ ├── checkplatform.js │ ├── download.cs │ ├── download.js │ ├── gyp-whereis.js │ ├── install.js │ ├── nuget │ ├── Xamarin.PepperSharp.nuspec │ ├── edge.nuspec │ └── install.ps1 │ ├── repl.cs │ ├── runJsHint.js │ ├── test.js │ ├── unzip.cs │ ├── unzip.vbs │ └── whereis.js └── setup.ps1 /Examples/api/Audio/Makefile: -------------------------------------------------------------------------------- 1 | 2 | all: 3 | @echo Usage: 4 | @echo make build - builds the example project 5 | @echo make run - installs the environment and runs the example 6 | 7 | SRCS = Audio.cs 8 | 9 | build: $(SRCS) 10 | (xbuild Audio.csproj /t:Rebuild /p:Configuration=Debug /p:Platform=AnyCPU) 11 | 12 | run: build 13 | npm install && npm start 14 | 15 | -------------------------------------------------------------------------------- /Examples/api/Audio/icon128.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/Examples/api/Audio/icon128.png -------------------------------------------------------------------------------- /Examples/api/Audio/renderer.js: -------------------------------------------------------------------------------- 1 | // This file is required by the index.html file and will 2 | // be executed in the renderer process for that window. 3 | // All of the Node.js APIs are available in this process. 4 | -------------------------------------------------------------------------------- /Examples/api/Core/Makefile: -------------------------------------------------------------------------------- 1 | 2 | all: 3 | @echo Usage: 4 | @echo make build - builds the example project 5 | @echo make run - installs the environment and runs the example 6 | 7 | SRCS = CoreInstance.cs 8 | 9 | build: $(SRCS) 10 | (xbuild Core.csproj /t:Rebuild /p:Configuration=Debug /p:Platform=AnyCPU) 11 | 12 | run: build 13 | npm install && npm start 14 | 15 | -------------------------------------------------------------------------------- /Examples/api/Core/icon128.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/Examples/api/Core/icon128.png -------------------------------------------------------------------------------- /Examples/api/Core/renderer.js: -------------------------------------------------------------------------------- 1 | // This file is required by the index.html file and will 2 | // be executed in the renderer process for that window. 3 | // All of the Node.js APIs are available in this process. 4 | -------------------------------------------------------------------------------- /Examples/api/FileIO/Makefile: -------------------------------------------------------------------------------- 1 | 2 | all: 3 | @echo Usage: 4 | @echo make build - builds the example project 5 | @echo make run - installs the environment and runs the example 6 | 7 | SRCS = FileIO.cs 8 | 9 | build: $(SRCS) 10 | (xbuild FileIO.csproj /t:Rebuild /p:Configuration=Debug /p:Platform=AnyCPU) 11 | 12 | run: build 13 | npm install && npm start 14 | 15 | -------------------------------------------------------------------------------- /Examples/api/FileIO/icon128.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/Examples/api/FileIO/icon128.png -------------------------------------------------------------------------------- /Examples/api/FileIO/renderer.js: -------------------------------------------------------------------------------- 1 | // This file is required by the index.html file and will 2 | // be executed in the renderer process for that window. 3 | // All of the Node.js APIs are available in this process. 4 | -------------------------------------------------------------------------------- /Examples/api/GamePad/Makefile: -------------------------------------------------------------------------------- 1 | 2 | all: 3 | @echo Usage: 4 | @echo make build - builds the example project 5 | @echo make run - installs the environment and runs the example 6 | 7 | SRCS = GamePad.cs 8 | 9 | build: $(SRCS) 10 | (xbuild GamePad.csproj /t:Rebuild /p:Configuration=Debug /p:Platform=AnyCPU) 11 | 12 | run: build 13 | npm install && npm start 14 | 15 | -------------------------------------------------------------------------------- /Examples/api/GamePad/icon128.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/Examples/api/GamePad/icon128.png -------------------------------------------------------------------------------- /Examples/api/GamePad/renderer.js: -------------------------------------------------------------------------------- 1 | // This file is required by the index.html file and will 2 | // be executed in the renderer process for that window. 3 | // All of the Node.js APIs are available in this process. 4 | -------------------------------------------------------------------------------- /Examples/api/Graphics_2D/Makefile: -------------------------------------------------------------------------------- 1 | 2 | all: 3 | @echo Usage: 4 | @echo make build - builds the example project 5 | @echo make run - installs the environment and runs the example 6 | 7 | SRCS = Graphics_2D.cs 8 | 9 | build: $(SRCS) 10 | (xbuild Graphics_2D.csproj /t:Rebuild /p:Configuration=Debug /p:Platform=AnyCPU) 11 | 12 | run: build 13 | npm install && npm start 14 | 15 | -------------------------------------------------------------------------------- /Examples/api/Graphics_2D/renderer.js: -------------------------------------------------------------------------------- 1 | // This file is required by the index.html file and will 2 | // be executed in the renderer process for that window. 3 | // All of the Node.js APIs are available in this process. 4 | -------------------------------------------------------------------------------- /Examples/api/InputEvent/Makefile: -------------------------------------------------------------------------------- 1 | 2 | all: 3 | @echo Usage: 4 | @echo make build - builds the example project 5 | @echo make run - installs the environment and runs the example 6 | 7 | SRCS = InputEventInstance.cs 8 | 9 | build: $(SRCS) 10 | (xbuild InputEvent.csproj /t:Rebuild /p:Configuration=Debug /p:Platform=AnyCPU) 11 | 12 | run: build 13 | npm install && npm start 14 | 15 | -------------------------------------------------------------------------------- /Examples/api/InputEvent/example.js: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2012 The Chromium Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style license that can be 3 | // found in the LICENSE file. 4 | 5 | // Called by the common.js module. 6 | function moduleDidLoad() { 7 | common.naclModule.style.backgroundColor = 'gray'; 8 | } 9 | 10 | // Called by the common.js module. 11 | function handleMessage(message) { 12 | common.logMessage(message.data); 13 | } 14 | -------------------------------------------------------------------------------- /Examples/api/InputEvent/renderer.js: -------------------------------------------------------------------------------- 1 | // This file is required by the index.html file and will 2 | // be executed in the renderer process for that window. 3 | // All of the Node.js APIs are available in this process. 4 | -------------------------------------------------------------------------------- /Examples/api/MediaStreamAudio/Makefile: -------------------------------------------------------------------------------- 1 | 2 | all: 3 | @echo Usage: 4 | @echo make build - builds the example project 5 | @echo make run - installs the environment and runs the example 6 | 7 | SRCS = MediaStreamAudio.cs 8 | 9 | build: $(SRCS) 10 | (xbuild MediaStreamAudio.csproj /t:Rebuild /p:Configuration=Debug /p:Platform=AnyCPU) 11 | 12 | run: build 13 | npm install && npm start 14 | 15 | -------------------------------------------------------------------------------- /Examples/api/MediaStreamAudio/example.js: -------------------------------------------------------------------------------- 1 | // Copyright 2014 The Chromium Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style license that can be 3 | // found in the LICENSE file. 4 | 5 | var stream; 6 | 7 | function success(s) { 8 | stream = s; 9 | common.naclModule.postMessage({track: stream.getAudioTracks()[0]}); 10 | } 11 | 12 | function failure(e) { 13 | common.logMessage("Error: " + e); 14 | } 15 | 16 | function moduleDidLoad() { 17 | navigator.webkitGetUserMedia({'audio': true}, success, failure); 18 | } 19 | -------------------------------------------------------------------------------- /Examples/api/MediaStreamAudio/icon128.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/Examples/api/MediaStreamAudio/icon128.png -------------------------------------------------------------------------------- /Examples/api/MediaStreamAudio/renderer.js: -------------------------------------------------------------------------------- 1 | // This file is required by the index.html file and will 2 | // be executed in the renderer process for that window. 3 | // All of the Node.js APIs are available in this process. 4 | -------------------------------------------------------------------------------- /Examples/api/MouseCursor/Makefile: -------------------------------------------------------------------------------- 1 | 2 | all: 3 | @echo Usage: 4 | @echo make build - builds the example project 5 | @echo make run - installs the environment and runs the example 6 | 7 | SRCS = MouseCursor.cs 8 | 9 | build: $(SRCS) 10 | (xbuild MouseCursor.csproj /t:Rebuild /p:Configuration=Debug /p:Platform=AnyCPU) 11 | 12 | run: build 13 | npm install && npm start 14 | 15 | -------------------------------------------------------------------------------- /Examples/api/MouseCursor/renderer.js: -------------------------------------------------------------------------------- 1 | // This file is required by the index.html file and will 2 | // be executed in the renderer process for that window. 3 | // All of the Node.js APIs are available in this process. 4 | -------------------------------------------------------------------------------- /Examples/api/MouseLock/Makefile: -------------------------------------------------------------------------------- 1 | 2 | all: 3 | @echo Usage: 4 | @echo make build - builds the example project 5 | @echo make run - installs the environment and runs the example 6 | 7 | SRCS = MouseLock.cs 8 | 9 | build: $(SRCS) 10 | (xbuild MouseLock.csproj /t:Rebuild /p:Configuration=Debug /p:Platform=AnyCPU) 11 | 12 | run: build 13 | npm install && npm start 14 | 15 | -------------------------------------------------------------------------------- /Examples/api/MouseLock/renderer.js: -------------------------------------------------------------------------------- 1 | // This file is required by the index.html file and will 2 | // be executed in the renderer process for that window. 3 | // All of the Node.js APIs are available in this process. 4 | -------------------------------------------------------------------------------- /Examples/api/NetworkMonitor/Makefile: -------------------------------------------------------------------------------- 1 | 2 | all: 3 | @echo Usage: 4 | @echo make build - builds the example project 5 | @echo make run - installs the environment and runs the example 6 | 7 | SRCS = NetworkMonitor.cs 8 | 9 | build: $(SRCS) 10 | (xbuild NetworkMonitor.csproj /t:Rebuild /p:Configuration=Debug /p:Platform=AnyCPU) 11 | 12 | run: build 13 | npm install && npm start 14 | 15 | -------------------------------------------------------------------------------- /Examples/api/NetworkMonitor/icon128.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/Examples/api/NetworkMonitor/icon128.png -------------------------------------------------------------------------------- /Examples/api/NetworkMonitor/renderer.js: -------------------------------------------------------------------------------- 1 | // This file is required by the index.html file and will 2 | // be executed in the renderer process for that window. 3 | // All of the Node.js APIs are available in this process. 4 | -------------------------------------------------------------------------------- /Examples/api/Socket/Makefile: -------------------------------------------------------------------------------- 1 | 2 | all: 3 | @echo Usage: 4 | @echo make build - builds the example project 5 | @echo make run - installs the environment and runs the example 6 | 7 | SRCS = Socket.cs EchoServer.cs 8 | 9 | build: $(SRCS) 10 | (xbuild Socket.csproj /t:Rebuild /p:Configuration=Debug /p:Platform=AnyCPU) 11 | 12 | run: build 13 | npm install && npm start 14 | 15 | -------------------------------------------------------------------------------- /Examples/api/Socket/icon128.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/Examples/api/Socket/icon128.png -------------------------------------------------------------------------------- /Examples/api/Socket/renderer.js: -------------------------------------------------------------------------------- 1 | // This file is required by the index.html file and will 2 | // be executed in the renderer process for that window. 3 | // All of the Node.js APIs are available in this process. 4 | -------------------------------------------------------------------------------- /Examples/api/URL_Loader/Makefile: -------------------------------------------------------------------------------- 1 | 2 | all: 3 | @echo Usage: 4 | @echo make build - builds the example project 5 | @echo make run - installs the environment and runs the example 6 | 7 | SRCS = URL_Loader.cs URL_LoaderHandler.cs 8 | 9 | build: $(SRCS) 10 | (xbuild URL_Loader.csproj /t:Rebuild /p:Configuration=Debug /p:Platform=AnyCPU) 11 | 12 | run: build 13 | npm install && npm start 14 | 15 | -------------------------------------------------------------------------------- /Examples/api/URL_Loader/icon128.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/Examples/api/URL_Loader/icon128.png -------------------------------------------------------------------------------- /Examples/api/URL_Loader/renderer.js: -------------------------------------------------------------------------------- 1 | // This file is required by the index.html file and will 2 | // be executed in the renderer process for that window. 3 | // All of the Node.js APIs are available in this process. 4 | -------------------------------------------------------------------------------- /Examples/api/URL_Loader/url_loader_success.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 8 | 9 | PPAPI UrlLoader example 10 | 11 | 12 |

PPAPI UrlLoader example

13 | The PPAPI UrlLoader example fetches the contents of this page. If you are 14 | seeing the contents of this page as part of the test output, then the test 15 | passed. 16 | 17 | 18 | -------------------------------------------------------------------------------- /Examples/api/VarArrayBuffer/Makefile: -------------------------------------------------------------------------------- 1 | 2 | all: 3 | @echo Usage: 4 | @echo make build - builds the example project 5 | @echo make run - installs the environment and runs the example 6 | 7 | SRCS = VarArrayBufferInstance.cs 8 | 9 | build: $(SRCS) 10 | (xbuild VarArrayBuffer.csproj /t:Rebuild /p:Configuration=Debug /p:Platform=AnyCPU) 11 | 12 | run: build 13 | npm install && npm start 14 | 15 | -------------------------------------------------------------------------------- /Examples/api/VarArrayBuffer/icon128.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/Examples/api/VarArrayBuffer/icon128.png -------------------------------------------------------------------------------- /Examples/api/VarArrayBuffer/renderer.js: -------------------------------------------------------------------------------- 1 | // This file is required by the index.html file and will 2 | // be executed in the renderer process for that window. 3 | // All of the Node.js APIs are available in this process. 4 | -------------------------------------------------------------------------------- /Examples/api/VideoEncode/Makefile: -------------------------------------------------------------------------------- 1 | 2 | all: 3 | @echo Usage: 4 | @echo make build - builds the example project 5 | @echo make run - installs the environment and runs the example 6 | 7 | SRCS = VideoEncode.cs 8 | 9 | build: $(SRCS) 10 | (xbuild VideoEncode.csproj /t:Rebuild /p:Configuration=Debug /p:Platform=AnyCPU) 11 | 12 | run: build 13 | npm install && npm start 14 | 15 | -------------------------------------------------------------------------------- /Examples/api/VideoEncode/icon128.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/Examples/api/VideoEncode/icon128.png -------------------------------------------------------------------------------- /Examples/api/VideoEncode/renderer.js: -------------------------------------------------------------------------------- 1 | // This file is required by the index.html file and will 2 | // be executed in the renderer process for that window. 3 | // All of the Node.js APIs are available in this process. 4 | -------------------------------------------------------------------------------- /Examples/api/WebSocket/Makefile: -------------------------------------------------------------------------------- 1 | 2 | all: 3 | @echo Usage: 4 | @echo make build - builds the example project 5 | @echo make run - installs the environment and runs the example 6 | 7 | SRCS = WebSocket.cs 8 | 9 | build: $(SRCS) 10 | (xbuild WebSocket.csproj /t:Rebuild /p:Configuration=Debug /p:Platform=AnyCPU) 11 | 12 | run: build 13 | npm install && npm start 14 | 15 | -------------------------------------------------------------------------------- /Examples/api/WebSocket/icon128.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/Examples/api/WebSocket/icon128.png -------------------------------------------------------------------------------- /Examples/api/WebSocket/renderer.js: -------------------------------------------------------------------------------- 1 | // This file is required by the index.html file and will 2 | // be executed in the renderer process for that window. 3 | // All of the Node.js APIs are available in this process. 4 | -------------------------------------------------------------------------------- /Examples/dotnet/DotNetSamples/renderer.js: -------------------------------------------------------------------------------- 1 | // This file is required by the index.html file and will 2 | // be executed in the renderer process for that window. 3 | // All of the Node.js APIs are available in this process. 4 | 5 | 6 | -------------------------------------------------------------------------------- /Examples/dotnet/DotNetSamples/samples/101_hello_lambda.js: -------------------------------------------------------------------------------- 1 | // Overview of electron-dotnet.js: https://github.com/xamarin/WebSharp/tree/master/electron-dotnet 2 | 3 | var dotnet = require('electron-dotnet'); 4 | 5 | var hellolambda = dotnet.func('async (input) => { return ".NET welcomes " + input.ToString(); }'); 6 | 7 | function hello_lambda() 8 | { 9 | hellolambda('Electron', function (error, result) { 10 | if (error) throw error; 11 | console.log(result); 12 | }); 13 | } 14 | 15 | -------------------------------------------------------------------------------- /Examples/dotnet/DotNetSamples/samples/102_hello_function.js: -------------------------------------------------------------------------------- 1 | // Overview of electron-dotnet.js: https://github.com/xamarin/WebSharp/tree/master/electron-dotnet 2 | 3 | var dotnet = require('electron-dotnet'); 4 | 5 | var hellofunction = dotnet.func(function () {/* 6 | async (input) => 7 | { 8 | return ".NET welcomes " + input.ToString(); 9 | } 10 | */}); 11 | 12 | function hello_function() 13 | { 14 | hellofunction('Electron', function (error, result) { 15 | if (error) throw error; 16 | console.log(result); 17 | }); 18 | } -------------------------------------------------------------------------------- /Examples/dotnet/DotNetSamples/samples/103_hello_file.csx: -------------------------------------------------------------------------------- 1 | async (input) => 2 | { 3 | return ".NET welcomes " + input.ToString(); 4 | } -------------------------------------------------------------------------------- /Examples/dotnet/DotNetSamples/samples/103_hello_file.js: -------------------------------------------------------------------------------- 1 | // Overview of electron-dotnet.js: https://github.com/xamarin/WebSharp/tree/master/electron-dotnet 2 | 3 | var dotnet = require('electron-dotnet'); 4 | 5 | var hellofile = dotnet.func('./samples/103_hello_file.csx'); 6 | 7 | function hello_file() 8 | { 9 | hellofile('Electron', function (error, result) { 10 | if (error) throw error; 11 | console.log(result); 12 | }); 13 | } -------------------------------------------------------------------------------- /Examples/dotnet/DotNetSamples/samples/105_add7_dll.js: -------------------------------------------------------------------------------- 1 | // Overview of electron-dotnet.js: https://github.com/xamarin/WebSharp/tree/master/electron-dotnet 2 | 3 | 4 | // Compile Sample105.dll with 5 | // - on Windows (.NET Framework): 6 | // csc.exe /target:library /debug Sample105.cs 7 | // - on MacOS/Linux (Mono): 8 | // mcs -sdk:4.5 Sample105.cs -target:library 9 | 10 | var dotnet = require('electron-dotnet'); 11 | 12 | var add7dll = dotnet.func('./samples/Sample105.dll'); 13 | 14 | function add7_dll () 15 | { 16 | add7dll(12, function (error, result) { 17 | if (error) throw error; 18 | console.log(result); 19 | }); 20 | } -------------------------------------------------------------------------------- /Examples/dotnet/DotNetSamples/samples/202_sql.js: -------------------------------------------------------------------------------- 1 | // Overview of edge.js: http://tjanczuk.github.com/edge 2 | 3 | var edge = require('../lib/edge'); 4 | 5 | var sql = edge.func('202_sql.csx'); 6 | 7 | sql('select top 2 * from Products', function (error, result) { 8 | if (error) throw error; 9 | console.log(result); 10 | }); 11 | -------------------------------------------------------------------------------- /Examples/dotnet/DotNetSamples/samples/205_soap.js: -------------------------------------------------------------------------------- 1 | // Overview of edge.js: http://tjanczuk.github.com/edge 2 | 3 | var edge = require('../lib/edge'); 4 | 5 | var convertKilograms = edge.func('205_soap.csx'); 6 | 7 | convertKilograms(123, function (error, result) { 8 | if (error) throw error; 9 | console.log(result); 10 | }); 11 | -------------------------------------------------------------------------------- /Examples/dotnet/DotNetSamples/samples/206_registry_read.js: -------------------------------------------------------------------------------- 1 | var edge = require('../lib/edge'); 2 | 3 | var readRegistery = edge.func(function () {/* 4 | using Microsoft.Win32; 5 | 6 | async (dynamic input) => 7 | { 8 | return Registry.GetValue((string) input.keyName, (string) input.valueName, null); 9 | } 10 | */}); 11 | 12 | readRegistery({ 13 | keyName: 'HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\MSBuild\\4.0', 14 | valueName: 'MSBuildOverrideTasksPath' 15 | }, function (err, result) { 16 | if (err) { 17 | throw err; 18 | } 19 | 20 | console.log(result); 21 | }); -------------------------------------------------------------------------------- /Examples/dotnet/DotNetSamples/samples/206_registry_write.js: -------------------------------------------------------------------------------- 1 | var edge = require('../lib/edge'); 2 | 3 | var writeRegistery = edge.func(function () {/* 4 | using Microsoft.Win32; 5 | 6 | async (dynamic input) => 7 | { 8 | Registry.SetValue((string)input.keyName, (string)input.valueName, input.value); 9 | return null; 10 | } 11 | */}); 12 | 13 | writeRegistery({ 14 | keyName: 'HKEY_CURRENT_USER\\Environment', 15 | valueName: 'MyCustomValue', 16 | value: 1050 17 | }, function (err) { 18 | if (err) { 19 | throw err; 20 | } 21 | 22 | console.log('Done!'); 23 | }); -------------------------------------------------------------------------------- /Examples/dotnet/DotNetSamples/samples/Sample105.cs: -------------------------------------------------------------------------------- 1 | using System.Threading.Tasks; 2 | 3 | namespace Sample105 4 | { 5 | public class Startup 6 | { 7 | public async Task Invoke(object input) 8 | { 9 | return this.Add7((int)input); 10 | } 11 | 12 | int Add7(int v) 13 | { 14 | return Helper.Add7(v); 15 | } 16 | } 17 | 18 | static class Helper 19 | { 20 | public static int Add7(int v) 21 | { 22 | return v + 7; 23 | } 24 | } 25 | } -------------------------------------------------------------------------------- /Examples/dotnet/DotNetSamples/samples/edge.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/Examples/dotnet/DotNetSamples/samples/edge.png -------------------------------------------------------------------------------- /Examples/dotnet/DotNetSamples/screenshots/DotNetSamples-mac.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/Examples/dotnet/DotNetSamples/screenshots/DotNetSamples-mac.png -------------------------------------------------------------------------------- /Examples/websharpjs/electron/Clipboard/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules -------------------------------------------------------------------------------- /Examples/websharpjs/electron/Clipboard/.vscode/settings.json: -------------------------------------------------------------------------------- 1 | // Place your settings in this file to overwrite default and user settings. 2 | { 3 | "typescript.tsdk": "./node_modules/typescript/lib" // we want to use the TS server from our node_modules folder to control its version 4 | } -------------------------------------------------------------------------------- /Examples/websharpjs/electron/Clipboard/.vscodeignore: -------------------------------------------------------------------------------- 1 | .vscode/** 2 | .vscode-test/** 3 | test/** 4 | .gitignore 5 | jsconfig.json 6 | electron-dotnet-quickstart.md 7 | .eslintrc.json 8 | -------------------------------------------------------------------------------- /Examples/websharpjs/electron/Clipboard/images/Clipper-mac.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/Examples/websharpjs/electron/Clipboard/images/Clipper-mac.png -------------------------------------------------------------------------------- /Examples/websharpjs/electron/Clipboard/images/Clipper-windows.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/Examples/websharpjs/electron/Clipboard/images/Clipper-windows.png -------------------------------------------------------------------------------- /Examples/websharpjs/electron/Clipboard/jsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | // See https://go.microsoft.com/fwlink/?LinkId=759670 3 | // for the documentation about the jsconfig.json format 4 | "compilerOptions": { 5 | "target": "es6", 6 | "module": "commonjs", 7 | "allowSyntheticDefaultImports": true 8 | }, 9 | "exclude": [ 10 | "node_modules", 11 | "bower_components", 12 | "jspm_packages", 13 | "tmp", 14 | "temp" 15 | ] 16 | } -------------------------------------------------------------------------------- /Examples/websharpjs/electron/Clipboard/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "clipboard", 3 | "displayName": "Clipboard", 4 | "description": "Example of Electron's Clipboard ", 5 | "version": "1.0.1", 6 | "publisher": "Xamarin", 7 | "main": "main.js", 8 | "scripts": { 9 | "start": "electron ." 10 | }, 11 | "devDependencies": { 12 | "electron": "^1.4.0" 13 | } 14 | } -------------------------------------------------------------------------------- /Examples/websharpjs/electron/Clipboard/renderer.js: -------------------------------------------------------------------------------- 1 | // This file is required by the index.html file and will 2 | // be executed in the renderer process for that window. 3 | // All of the Node.js APIs are available in this process. 4 | var hello = require("./src/clipboard.js"); 5 | 6 | hello.sayHello(); 7 | -------------------------------------------------------------------------------- /Examples/websharpjs/electron/Clipboard/src/Clipper/Clipper.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | net451 5 | .\bin\$(Configuration)\ 6 | $(OutputPath) 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /Examples/websharpjs/electron/Clipboard/src/Clipper/packages.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /Examples/websharpjs/electron/Clipboard/src/clipboard.js: -------------------------------------------------------------------------------- 1 | var dotnet = require('electron-dotnet'); 2 | 3 | //var hello = dotnet.func("./src/Clipper/bin/Debug/Clipper.dll"); 4 | var hello = dotnet.func("./src/Clipper/Clipper.cs"); 5 | 6 | //Make method externaly visible this will be referenced in the renderer.js file 7 | exports.sayHello = arg => { 8 | hello('Clipper', function (error, result) { 9 | if (error) throw error; 10 | if (result) console.log(result); 11 | }); 12 | } -------------------------------------------------------------------------------- /Examples/websharpjs/electron/DesktopCapturer/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules -------------------------------------------------------------------------------- /Examples/websharpjs/electron/DesktopCapturer/.vscode/settings.json: -------------------------------------------------------------------------------- 1 | // Place your settings in this file to overwrite default and user settings. 2 | { 3 | "typescript.tsdk": "./node_modules/typescript/lib" // we want to use the TS server from our node_modules folder to control its version 4 | } -------------------------------------------------------------------------------- /Examples/websharpjs/electron/DesktopCapturer/.vscodeignore: -------------------------------------------------------------------------------- 1 | .vscode/** 2 | .vscode-test/** 3 | test/** 4 | .gitignore 5 | jsconfig.json 6 | electron-dotnet-quickstart.md 7 | .eslintrc.json 8 | -------------------------------------------------------------------------------- /Examples/websharpjs/electron/DesktopCapturer/jsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | // See https://go.microsoft.com/fwlink/?LinkId=759670 3 | // for the documentation about the jsconfig.json format 4 | "compilerOptions": { 5 | "target": "es6", 6 | "module": "commonjs", 7 | "allowSyntheticDefaultImports": true 8 | }, 9 | "exclude": [ 10 | "node_modules", 11 | "bower_components", 12 | "jspm_packages", 13 | "tmp", 14 | "temp" 15 | ] 16 | } -------------------------------------------------------------------------------- /Examples/websharpjs/electron/DesktopCapturer/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "desktopcapturer", 3 | "displayName": "DesktopCapturer", 4 | "description": "Example shows how to capture video from a desktop windows using Electron DesktopCapturer. ", 5 | "version": "1.0.0", 6 | "publisher": "Xamarin", 7 | "main": "main.js", 8 | "scripts": { 9 | "start": "electron ." 10 | }, 11 | "devDependencies": { 12 | "electron": "^1.4.0" 13 | } 14 | } -------------------------------------------------------------------------------- /Examples/websharpjs/electron/DesktopCapturer/renderer.js: -------------------------------------------------------------------------------- 1 | // This file is required by the index.html file and will 2 | // be executed in the renderer process for that window. 3 | // All of the Node.js APIs are available in this process. 4 | var hello = require("./src/desktopcapturer.js"); 5 | 6 | hello.sayHello(); 7 | -------------------------------------------------------------------------------- /Examples/websharpjs/electron/DesktopCapturer/src/Capture/Capture.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | net451 5 | .\bin\$(Configuration)\ 6 | $(OutputPath) 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /Examples/websharpjs/electron/DesktopCapturer/src/Capture/packages.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /Examples/websharpjs/electron/DesktopCapturer/src/Main/MainWindow.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | net451 5 | .\bin\$(Configuration)\ 6 | $(OutputPath) 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /Examples/websharpjs/electron/DesktopCapturer/src/Main/packages.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /Examples/websharpjs/electron/DesktopCapturer/src/desktopcapturer.js: -------------------------------------------------------------------------------- 1 | var dotnet = require('electron-dotnet'); 2 | 3 | //var hello = dotnet.func("./src/Capture/bin/Debug/Capture.dll"); 4 | var hello = dotnet.func("./src/Capture/Capture.cs"); 5 | 6 | //Make method externaly visible this will be referenced in the renderer.js file 7 | exports.sayHello = arg => { 8 | hello('Capture', function (error, result) { 9 | if (error) throw error; 10 | if (result) console.log(result); 11 | }); 12 | } -------------------------------------------------------------------------------- /Examples/websharpjs/electron/Ipc/.eslintrc.json: -------------------------------------------------------------------------------- 1 | { 2 | "env": { 3 | "browser": false, 4 | "commonjs": true, 5 | "es6": true, 6 | "node": true 7 | }, 8 | "parserOptions": { 9 | "ecmaFeatures": { 10 | "jsx": true 11 | }, 12 | "sourceType": "module" 13 | }, 14 | "rules": { 15 | "no-const-assign": "warn", 16 | "no-this-before-super": "warn", 17 | "no-undef": "warn", 18 | "no-unreachable": "warn", 19 | "no-unused-vars": "warn", 20 | "constructor-super": "warn", 21 | "valid-typeof": "warn" 22 | } 23 | } -------------------------------------------------------------------------------- /Examples/websharpjs/electron/Ipc/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules -------------------------------------------------------------------------------- /Examples/websharpjs/electron/Ipc/.vscode/settings.json: -------------------------------------------------------------------------------- 1 | // Place your settings in this file to overwrite default and user settings. 2 | { 3 | "typescript.tsdk": "./node_modules/typescript/lib" // we want to use the TS server from our node_modules folder to control its version 4 | } -------------------------------------------------------------------------------- /Examples/websharpjs/electron/Ipc/.vscodeignore: -------------------------------------------------------------------------------- 1 | .vscode/** 2 | .vscode-test/** 3 | test/** 4 | .gitignore 5 | jsconfig.json 6 | electron-dotnet-quickstart.md 7 | .eslintrc.json 8 | -------------------------------------------------------------------------------- /Examples/websharpjs/electron/Ipc/images/Ipc-mac.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/Examples/websharpjs/electron/Ipc/images/Ipc-mac.png -------------------------------------------------------------------------------- /Examples/websharpjs/electron/Ipc/images/Ipc-windows.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/Examples/websharpjs/electron/Ipc/images/Ipc-windows.png -------------------------------------------------------------------------------- /Examples/websharpjs/electron/Ipc/jsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | // See https://go.microsoft.com/fwlink/?LinkId=759670 3 | // for the documentation about the jsconfig.json format 4 | "compilerOptions": { 5 | "target": "es6", 6 | "module": "commonjs", 7 | "allowSyntheticDefaultImports": true 8 | }, 9 | "exclude": [ 10 | "node_modules", 11 | "bower_components", 12 | "jspm_packages", 13 | "tmp", 14 | "temp" 15 | ] 16 | } -------------------------------------------------------------------------------- /Examples/websharpjs/electron/Ipc/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "ipc", 3 | "displayName": "Ipc", 4 | "description": "Example of IPC Communications between Renderer and Main Processes", 5 | "version": "0.0.1", 6 | "publisher": "Xamarin", 7 | "main": "main.js", 8 | "scripts": { 9 | "start": "electron ." 10 | }, 11 | "devDependencies": { 12 | "electron": "^1.4.0" 13 | } 14 | } -------------------------------------------------------------------------------- /Examples/websharpjs/electron/Ipc/renderer.js: -------------------------------------------------------------------------------- 1 | // This file is required by the index.html file and will 2 | // be executed in the renderer process for that window. 3 | // All of the Node.js APIs are available in this process. 4 | var hello = require("./src/ipc.js"); 5 | 6 | hello.sayHello(); 7 | -------------------------------------------------------------------------------- /Examples/websharpjs/electron/Ipc/src/Ping/Ping.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | net451 5 | .\bin\$(Configuration)\ 6 | $(OutputPath) 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /Examples/websharpjs/electron/Ipc/src/Ping/packages.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /Examples/websharpjs/electron/Ipc/src/ipc.js: -------------------------------------------------------------------------------- 1 | var dotnet = require('electron-dotnet'); 2 | 3 | //var hello = dotnet.func("./src/Ping/bin/Debug/Ping.dll"); 4 | var hello = dotnet.func("./src/Ping/Ping.cs"); 5 | 6 | //Make method externaly visible this will be referenced in the renderer.js file 7 | exports.sayHello = arg => { 8 | hello('Ping', function (error, result) { 9 | if (error) throw error; 10 | if (result) console.log(result); 11 | }); 12 | } -------------------------------------------------------------------------------- /Examples/websharpjs/electron/IpcMain/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules -------------------------------------------------------------------------------- /Examples/websharpjs/electron/IpcMain/.vscode/settings.json: -------------------------------------------------------------------------------- 1 | // Place your settings in this file to overwrite default and user settings. 2 | { 3 | "typescript.tsdk": "./node_modules/typescript/lib" // we want to use the TS server from our node_modules folder to control its version 4 | } -------------------------------------------------------------------------------- /Examples/websharpjs/electron/IpcMain/.vscodeignore: -------------------------------------------------------------------------------- 1 | .vscode/** 2 | .vscode-test/** 3 | test/** 4 | .gitignore 5 | jsconfig.json 6 | electron-dotnet-quickstart.md 7 | .eslintrc.json 8 | -------------------------------------------------------------------------------- /Examples/websharpjs/electron/IpcMain/jsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | // See https://go.microsoft.com/fwlink/?LinkId=759670 3 | // for the documentation about the jsconfig.json format 4 | "compilerOptions": { 5 | "target": "es6", 6 | "module": "commonjs", 7 | "allowSyntheticDefaultImports": true 8 | }, 9 | "exclude": [ 10 | "node_modules", 11 | "bower_components", 12 | "jspm_packages", 13 | "tmp", 14 | "temp" 15 | ] 16 | } -------------------------------------------------------------------------------- /Examples/websharpjs/electron/IpcMain/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "ipcmain", 3 | "displayName": "IpcMain", 4 | "description": "Example of IPC Communications between Renderer (uses IpcRenderer) and Main (uses IpcMain) Processes.", 5 | "version": "1.0.0", 6 | "publisher": "Xamarin", 7 | "main": "main.js", 8 | "scripts": { 9 | "start": "electron ." 10 | }, 11 | "devDependencies": { 12 | "electron": "^1.4.0" 13 | } 14 | } -------------------------------------------------------------------------------- /Examples/websharpjs/electron/IpcMain/renderer.js: -------------------------------------------------------------------------------- 1 | // This file is required by the index.html file and will 2 | // be executed in the renderer process for that window. 3 | // All of the Node.js APIs are available in this process. 4 | var hello = require("./src/ipcmain.js"); 5 | 6 | hello.sayHello(); 7 | -------------------------------------------------------------------------------- /Examples/websharpjs/electron/IpcMain/src/Main/MainWindow.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | net451 5 | .\bin\$(Configuration)\ 6 | $(OutputPath) 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /Examples/websharpjs/electron/IpcMain/src/Main/packages.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /Examples/websharpjs/electron/IpcMain/src/Ping/Ping.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | net451 5 | .\bin\$(Configuration)\ 6 | $(OutputPath) 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /Examples/websharpjs/electron/IpcMain/src/Ping/packages.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /Examples/websharpjs/electron/IpcMain/src/ipcmain.js: -------------------------------------------------------------------------------- 1 | var dotnet = require('electron-dotnet'); 2 | 3 | //var hello = dotnet.func("./src/Ping/bin/Debug/Ping.dll"); 4 | var hello = dotnet.func("./src/Ping/Ping.cs"); 5 | 6 | //Make method externaly visible this will be referenced in the renderer.js file 7 | exports.sayHello = arg => { 8 | hello('Ping', function (error, result) { 9 | if (error) throw error; 10 | if (result) console.log(result); 11 | }); 12 | } -------------------------------------------------------------------------------- /Examples/websharpjs/electron/TextEditor/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules -------------------------------------------------------------------------------- /Examples/websharpjs/electron/TextEditor/.vscode/settings.json: -------------------------------------------------------------------------------- 1 | // Place your settings in this file to overwrite default and user settings. 2 | { 3 | "typescript.tsdk": "./node_modules/typescript/lib" // we want to use the TS server from our node_modules folder to control its version 4 | } -------------------------------------------------------------------------------- /Examples/websharpjs/electron/TextEditor/.vscodeignore: -------------------------------------------------------------------------------- 1 | .vscode/** 2 | .vscode-test/** 3 | test/** 4 | .gitignore 5 | jsconfig.json 6 | electron-dotnet-quickstart.md 7 | .eslintrc.json 8 | -------------------------------------------------------------------------------- /Examples/websharpjs/electron/TextEditor/jsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | // See https://go.microsoft.com/fwlink/?LinkId=759670 3 | // for the documentation about the jsconfig.json format 4 | "compilerOptions": { 5 | "target": "es6", 6 | "module": "commonjs", 7 | "allowSyntheticDefaultImports": true 8 | }, 9 | "exclude": [ 10 | "node_modules", 11 | "bower_components", 12 | "jspm_packages", 13 | "tmp", 14 | "temp" 15 | ] 16 | } -------------------------------------------------------------------------------- /Examples/websharpjs/electron/TextEditor/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "texteditor", 3 | "displayName": "TextEditor", 4 | "description": "Example Electron Dialogs API", 5 | "version": "1.0.0", 6 | "publisher": "Xamarin", 7 | "main": "main.js", 8 | "scripts": { 9 | "start": "electron ." 10 | }, 11 | "devDependencies": { 12 | "electron": "^1.4.0" 13 | } 14 | } -------------------------------------------------------------------------------- /Examples/websharpjs/electron/TextEditor/renderer.js: -------------------------------------------------------------------------------- 1 | // This file is required by the index.html file and will 2 | // be executed in the renderer process for that window. 3 | // All of the Node.js APIs are available in this process. 4 | var hello = require("./src/texteditor.js"); 5 | 6 | hello.sayHello(); 7 | -------------------------------------------------------------------------------- /Examples/websharpjs/electron/TextEditor/src/DialogHelpers/DialogHelpers.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | net451 5 | .\bin\$(Configuration)\ 6 | $(OutputPath) 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /Examples/websharpjs/electron/TextEditor/src/DialogHelpers/packages.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /Examples/websharpjs/electron/TextEditor/src/texteditor.js: -------------------------------------------------------------------------------- 1 | var dotnet = require('electron-dotnet'); 2 | 3 | //var hello = dotnet.func("./src/DialogHelpers/bin/Debug/DialogHelpers.dll"); 4 | var hello = dotnet.func("./src/DialogHelpers/DialogHelpers.cs"); 5 | 6 | //Make method externaly visible this will be referenced in the renderer.js file 7 | exports.sayHello = arg => { 8 | hello('DialogHelpers', function (error, result) { 9 | if (error) throw error; 10 | if (result) console.log(result); 11 | }); 12 | } -------------------------------------------------------------------------------- /Examples/websharpjs/electron/browserwindow/main/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules -------------------------------------------------------------------------------- /Examples/websharpjs/electron/browserwindow/main/.vscode/settings.json: -------------------------------------------------------------------------------- 1 | // Place your settings in this file to overwrite default and user settings. 2 | { 3 | "typescript.tsdk": "./node_modules/typescript/lib" // we want to use the TS server from our node_modules folder to control its version 4 | } -------------------------------------------------------------------------------- /Examples/websharpjs/electron/browserwindow/main/.vscodeignore: -------------------------------------------------------------------------------- 1 | .vscode/** 2 | .vscode-test/** 3 | test/** 4 | .gitignore 5 | jsconfig.json 6 | electron-dotnet-quickstart.md 7 | .eslintrc.json 8 | -------------------------------------------------------------------------------- /Examples/websharpjs/electron/browserwindow/main/images/browserwindow-mac.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/Examples/websharpjs/electron/browserwindow/main/images/browserwindow-mac.png -------------------------------------------------------------------------------- /Examples/websharpjs/electron/browserwindow/main/jsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | // See https://go.microsoft.com/fwlink/?LinkId=759670 3 | // for the documentation about the jsconfig.json format 4 | "compilerOptions": { 5 | "target": "es6", 6 | "module": "commonjs", 7 | "allowSyntheticDefaultImports": true 8 | }, 9 | "exclude": [ 10 | "node_modules", 11 | "bower_components", 12 | "jspm_packages", 13 | "tmp", 14 | "temp" 15 | ] 16 | } -------------------------------------------------------------------------------- /Examples/websharpjs/electron/browserwindow/main/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "mainbrowserwindow", 3 | "displayName": "MainBrowserWindow", 4 | "description": "Example of creating a new BrowserWindow ", 5 | "version": "1.0.0", 6 | "publisher": "Xamarin", 7 | "main": "main.js", 8 | "scripts": { 9 | "start": "electron ." 10 | }, 11 | "devDependencies": { 12 | "electron": "^1.4.0" 13 | } 14 | } -------------------------------------------------------------------------------- /Examples/websharpjs/electron/browserwindow/main/renderer.js: -------------------------------------------------------------------------------- 1 | // This file is required by the index.html file and will 2 | // be executed in the renderer process for that window. 3 | // All of the Node.js APIs are available in this process. 4 | 5 | -------------------------------------------------------------------------------- /Examples/websharpjs/electron/browserwindow/main/src/MainWindow/MainWindow.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | net451 5 | .\bin\$(Configuration)\ 6 | $(OutputPath) 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /Examples/websharpjs/electron/browserwindow/main/src/MainWindow/packages.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /Examples/websharpjs/electron/browserwindow/main/src/mainbrowserwindow.js: -------------------------------------------------------------------------------- 1 | var dotnet = require('electron-dotnet'); 2 | 3 | //var createMainWindow = dotnet.func("./src/MainWindow/bin/Debug/MainWindow.dll"); 4 | var createMainWindow = dotnet.func("./src/MainWindow/MainWindow.cs"); 5 | 6 | //Make method externaly visible this will be referenced in the main.js file 7 | exports.createMainWindow = arg => { 8 | createMainWindow(arg, function (error, result) { 9 | if (error) throw error; 10 | return result; 11 | }); 12 | } -------------------------------------------------------------------------------- /Examples/websharpjs/electron/handclaps/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules -------------------------------------------------------------------------------- /Examples/websharpjs/electron/handclaps/.vscode/settings.json: -------------------------------------------------------------------------------- 1 | // Place your settings in this file to overwrite default and user settings. 2 | { 3 | "typescript.tsdk": "./node_modules/typescript/lib" // we want to use the TS server from our node_modules folder to control its version 4 | } -------------------------------------------------------------------------------- /Examples/websharpjs/electron/handclaps/.vscodeignore: -------------------------------------------------------------------------------- 1 | .vscode/** 2 | .vscode-test/** 3 | test/** 4 | .gitignore 5 | jsconfig.json 6 | electron-dotnet-quickstart.md 7 | .eslintrc.json 8 | -------------------------------------------------------------------------------- /Examples/websharpjs/electron/handclaps/assets/icons/appicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/Examples/websharpjs/electron/handclaps/assets/icons/appicon.ico -------------------------------------------------------------------------------- /Examples/websharpjs/electron/handclaps/assets/icons/appicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/Examples/websharpjs/electron/handclaps/assets/icons/appicon.png -------------------------------------------------------------------------------- /Examples/websharpjs/electron/handclaps/assets/icons/othersizes/16x16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/Examples/websharpjs/electron/handclaps/assets/icons/othersizes/16x16.png -------------------------------------------------------------------------------- /Examples/websharpjs/electron/handclaps/assets/icons/othersizes/24x24.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/Examples/websharpjs/electron/handclaps/assets/icons/othersizes/24x24.png -------------------------------------------------------------------------------- /Examples/websharpjs/electron/handclaps/assets/icons/othersizes/32x32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/Examples/websharpjs/electron/handclaps/assets/icons/othersizes/32x32.png -------------------------------------------------------------------------------- /Examples/websharpjs/electron/handclaps/assets/icons/othersizes/48x48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/Examples/websharpjs/electron/handclaps/assets/icons/othersizes/48x48.png -------------------------------------------------------------------------------- /Examples/websharpjs/electron/handclaps/assets/icons/othersizes/64x64.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/Examples/websharpjs/electron/handclaps/assets/icons/othersizes/64x64.png -------------------------------------------------------------------------------- /Examples/websharpjs/electron/handclaps/assets/icons/othersizes/96x96.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/Examples/websharpjs/electron/handclaps/assets/icons/othersizes/96x96.png -------------------------------------------------------------------------------- /Examples/websharpjs/electron/handclaps/images/handclaps-install.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/Examples/websharpjs/electron/handclaps/images/handclaps-install.gif -------------------------------------------------------------------------------- /Examples/websharpjs/electron/handclaps/images/handclaps.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/Examples/websharpjs/electron/handclaps/images/handclaps.gif -------------------------------------------------------------------------------- /Examples/websharpjs/electron/handclaps/jsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | // See https://go.microsoft.com/fwlink/?LinkId=759670 3 | // for the documentation about the jsconfig.json format 4 | "compilerOptions": { 5 | "target": "es6", 6 | "module": "commonjs", 7 | "allowSyntheticDefaultImports": true 8 | }, 9 | "exclude": [ 10 | "node_modules", 11 | "bower_components", 12 | "jspm_packages", 13 | "tmp", 14 | "temp" 15 | ] 16 | } -------------------------------------------------------------------------------- /Examples/websharpjs/electron/handclaps/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "handclaps", 3 | "displayName": "HandClaps", 4 | "description": "Making generating handclap tweets easy.", 5 | "version": "1.0.0", 6 | "publisher": "Xamarin", 7 | "main": "main.js", 8 | "scripts": { 9 | "start": "electron ." 10 | }, 11 | "devDependencies": { 12 | "electron": "^1.4.0" 13 | }, 14 | "dependencies": { 15 | "bootstrap": "^4.0.0-alpha.6" 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /Examples/websharpjs/electron/handclaps/renderer.js: -------------------------------------------------------------------------------- 1 | // This file is required by the index.html file and will 2 | // be executed in the renderer process for that window. 3 | // All of the Node.js APIs are available in this process. 4 | var hello = require("./src/handclaps.js"); 5 | 6 | hello.sayHello(); 7 | -------------------------------------------------------------------------------- /Examples/websharpjs/electron/handclaps/src/ClapsRenderer/packages.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /Examples/websharpjs/electron/handclaps/src/Main/packages.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /Examples/websharpjs/electron/handclaps/src/handclaps.js: -------------------------------------------------------------------------------- 1 | var dotnet = require('electron-dotnet'); 2 | 3 | //var hello = dotnet.func("./src/ClapsRenderer/bin/Debug/ClapsRenderer.dll"); 4 | var hello = dotnet.func("./src/ClapsRenderer/ClapsRenderer.cs"); 5 | 6 | //Make method externaly visible this will be referenced in the renderer.js file 7 | exports.sayHello = arg => { 8 | hello('ClapsRenderer', function (error, result) { 9 | if (error) throw error; 10 | if (result) console.log(result); 11 | }); 12 | } -------------------------------------------------------------------------------- /Examples/websharpjs/electron/menu/ContextMenu/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules -------------------------------------------------------------------------------- /Examples/websharpjs/electron/menu/ContextMenu/.vscode/settings.json: -------------------------------------------------------------------------------- 1 | // Place your settings in this file to overwrite default and user settings. 2 | { 3 | "typescript.tsdk": "./node_modules/typescript/lib" // we want to use the TS server from our node_modules folder to control its version 4 | } -------------------------------------------------------------------------------- /Examples/websharpjs/electron/menu/ContextMenu/.vscodeignore: -------------------------------------------------------------------------------- 1 | .vscode/** 2 | .vscode-test/** 3 | test/** 4 | .gitignore 5 | jsconfig.json 6 | electron-dotnet-quickstart.md 7 | .eslintrc.json 8 | -------------------------------------------------------------------------------- /Examples/websharpjs/electron/menu/ContextMenu/jsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | // See https://go.microsoft.com/fwlink/?LinkId=759670 3 | // for the documentation about the jsconfig.json format 4 | "compilerOptions": { 5 | "target": "es6", 6 | "module": "commonjs", 7 | "allowSyntheticDefaultImports": true 8 | }, 9 | "exclude": [ 10 | "node_modules", 11 | "bower_components", 12 | "jspm_packages", 13 | "tmp", 14 | "temp" 15 | ] 16 | } -------------------------------------------------------------------------------- /Examples/websharpjs/electron/menu/ContextMenu/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "contextmenu", 3 | "displayName": "ContextMenu", 4 | "description": "Example of context menu using Menu and MenuItem", 5 | "version": "1.0.0", 6 | "publisher": "Xamarin", 7 | "main": "main.js", 8 | "scripts": { 9 | "start": "electron ." 10 | }, 11 | "devDependencies": { 12 | "electron": "^1.4.0" 13 | } 14 | } -------------------------------------------------------------------------------- /Examples/websharpjs/electron/menu/ContextMenu/renderer.js: -------------------------------------------------------------------------------- 1 | // This file is required by the index.html file and will 2 | // be executed in the renderer process for that window. 3 | // All of the Node.js APIs are available in this process. 4 | -------------------------------------------------------------------------------- /Examples/websharpjs/electron/menu/ContextMenu/src/ContextMenuRenderer/ContextMenuRenderer.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | net451 5 | .\bin\$(Configuration)\ 6 | $(OutputPath) 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /Examples/websharpjs/electron/menu/ContextMenu/src/ContextMenuRenderer/packages.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /Examples/websharpjs/electron/menu/ContextMenu/src/contextmenu.js: -------------------------------------------------------------------------------- 1 | var dotnet = require('electron-dotnet'); 2 | 3 | //var hello = dotnet.func("./src/ContextMenuRenderer/bin/Debug/ContextMenuRenderer.dll"); 4 | var createMain = dotnet.func("./src/ContextMenuRenderer/ContextMenuRenderer.cs"); 5 | 6 | //Make method externaly visible this will be referenced in the renderer.js file 7 | exports.createMainWindow = arg => { 8 | createMain(arg, function (error, result) { 9 | if (error) throw error; 10 | return result; 11 | }); 12 | } -------------------------------------------------------------------------------- /Examples/websharpjs/nodejs/EventEmitter/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules -------------------------------------------------------------------------------- /Examples/websharpjs/nodejs/EventEmitter/.vscode/settings.json: -------------------------------------------------------------------------------- 1 | // Place your settings in this file to overwrite default and user settings. 2 | { 3 | "typescript.tsdk": "./node_modules/typescript/lib" // we want to use the TS server from our node_modules folder to control its version 4 | } -------------------------------------------------------------------------------- /Examples/websharpjs/nodejs/EventEmitter/.vscodeignore: -------------------------------------------------------------------------------- 1 | .vscode/** 2 | .vscode-test/** 3 | test/** 4 | .gitignore 5 | jsconfig.json 6 | electron-dotnet-quickstart.md 7 | .eslintrc.json 8 | -------------------------------------------------------------------------------- /Examples/websharpjs/nodejs/EventEmitter/jsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | // See https://go.microsoft.com/fwlink/?LinkId=759670 3 | // for the documentation about the jsconfig.json format 4 | "compilerOptions": { 5 | "target": "es6", 6 | "module": "commonjs", 7 | "allowSyntheticDefaultImports": true 8 | }, 9 | "exclude": [ 10 | "node_modules", 11 | "bower_components", 12 | "jspm_packages", 13 | "tmp", 14 | "temp" 15 | ] 16 | } -------------------------------------------------------------------------------- /Examples/websharpjs/nodejs/EventEmitter/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "eventemitter", 3 | "displayName": "EventEmitter", 4 | "description": "Example NodeJS EventEmitter", 5 | "version": "0.0.1", 6 | "publisher": "Xamarin", 7 | "main": "main.js", 8 | "scripts": { 9 | "start": "electron ." 10 | }, 11 | "devDependencies": { 12 | "electron": "^1.4.0" 13 | } 14 | } -------------------------------------------------------------------------------- /Examples/websharpjs/nodejs/EventEmitter/renderer.js: -------------------------------------------------------------------------------- 1 | // This file is required by the index.html file and will 2 | // be executed in the renderer process for that window. 3 | // All of the Node.js APIs are available in this process. 4 | var hello = require("./src/eventemitter.js"); 5 | 6 | hello.sayHello(); 7 | -------------------------------------------------------------------------------- /Examples/websharpjs/nodejs/EventEmitter/src/Emitter/Emitter.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | net451 5 | .\bin\$(Configuration)\ 6 | $(OutputPath) 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /Examples/websharpjs/nodejs/EventEmitter/src/Emitter/packages.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /Examples/websharpjs/nodejs/EventEmitter/src/eventemitter.js: -------------------------------------------------------------------------------- 1 | var dotnet = require('electron-dotnet'); 2 | 3 | //var hello = dotnet.func("./src/Emitter/bin/Debug/Emitter.dll"); 4 | var hello = dotnet.func("./src/Emitter/Emitter.cs"); 5 | 6 | //Make method externaly visible this will be referenced in the renderer.js file 7 | exports.sayHello = arg => { 8 | hello('Emitter', function (error, result) { 9 | if (error) throw error; 10 | if (result) console.log(result); 11 | }); 12 | } -------------------------------------------------------------------------------- /Examples/websharpjs/notifications/.eslintrc.json: -------------------------------------------------------------------------------- 1 | { 2 | "env": { 3 | "browser": false, 4 | "commonjs": true, 5 | "es6": true, 6 | "node": true 7 | }, 8 | "parserOptions": { 9 | "ecmaFeatures": { 10 | "jsx": true 11 | }, 12 | "sourceType": "module" 13 | }, 14 | "rules": { 15 | "no-const-assign": "warn", 16 | "no-this-before-super": "warn", 17 | "no-undef": "warn", 18 | "no-unreachable": "warn", 19 | "no-unused-vars": "warn", 20 | "constructor-super": "warn", 21 | "valid-typeof": "warn" 22 | } 23 | } -------------------------------------------------------------------------------- /Examples/websharpjs/notifications/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules -------------------------------------------------------------------------------- /Examples/websharpjs/notifications/.vscode/settings.json: -------------------------------------------------------------------------------- 1 | // Place your settings in this file to overwrite default and user settings. 2 | { 3 | "typescript.tsdk": "./node_modules/typescript/lib" // we want to use the TS server from our node_modules folder to control its version 4 | } -------------------------------------------------------------------------------- /Examples/websharpjs/notifications/.vscodeignore: -------------------------------------------------------------------------------- 1 | .vscode/** 2 | .vscode-test/** 3 | test/** 4 | .gitignore 5 | jsconfig.json 6 | electron-dotnet-quickstart.md 7 | .eslintrc.json 8 | -------------------------------------------------------------------------------- /Examples/websharpjs/notifications/images/notifications.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/Examples/websharpjs/notifications/images/notifications.gif -------------------------------------------------------------------------------- /Examples/websharpjs/notifications/jsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | // See https://go.microsoft.com/fwlink/?LinkId=759670 3 | // for the documentation about the jsconfig.json format 4 | "compilerOptions": { 5 | "target": "es6", 6 | "module": "commonjs", 7 | "allowSyntheticDefaultImports": true 8 | }, 9 | "exclude": [ 10 | "node_modules", 11 | "bower_components", 12 | "jspm_packages", 13 | "tmp", 14 | "temp" 15 | ] 16 | } -------------------------------------------------------------------------------- /Examples/websharpjs/notifications/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "notifications", 3 | "displayName": "notifications", 4 | "description": "A sample that demonstrates Notification API ", 5 | "version": "0.0.1", 6 | "publisher": "Xamarin", 7 | "main": "main.js", 8 | "scripts": { 9 | "start": "electron ." 10 | }, 11 | "devDependencies": { 12 | "electron": "^1.4.0" 13 | } 14 | } -------------------------------------------------------------------------------- /Examples/websharpjs/notifications/renderer.js: -------------------------------------------------------------------------------- 1 | // This file is required by the index.html file and will 2 | // be executed in the renderer process for that window. 3 | // All of the Node.js APIs are available in this process. 4 | var notifications = require("./src/notifications.js"); 5 | 6 | document.addEventListener('DOMContentLoaded', function() { 7 | notifications.addNotifications(); 8 | }) 9 | -------------------------------------------------------------------------------- /Examples/websharpjs/notifications/src/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/Examples/websharpjs/notifications/src/icon.png -------------------------------------------------------------------------------- /Examples/websharpjs/notifications/src/project.json: -------------------------------------------------------------------------------- 1 | { 2 | "version": "1.0.0-*", 3 | "buildOptions": { 4 | "debugType": "portable", 5 | "outputName": "notifications" 6 | }, 7 | "runtimes": { 8 | "win10-x64": {}, 9 | "osx.10.12-x64": {} 10 | }, 11 | "dependencies": { 12 | "WebSharp.js" : { "version": "*"} 13 | }, 14 | "frameworks": { 15 | "net451": {} 16 | } 17 | } -------------------------------------------------------------------------------- /GettingStarted/HelloWorld.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | using PepperSharp; 4 | 5 | namespace GettingStarted 6 | { 7 | public class HelloWorld : Instance 8 | { 9 | public HelloWorld (IntPtr handle) : base(handle) 10 | { 11 | Initialize += OnInitialize; 12 | } 13 | 14 | private void OnInitialize(object sender, InitializeEventArgs args) 15 | { 16 | LogToConsoleWithSource(PPLogLevel.Log, "GettingStarted.HelloWorld", "HelloWorld from C#"); 17 | } 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /GettingStarted/renderer.js: -------------------------------------------------------------------------------- 1 | // This file is required by the index.html file and will 2 | // be executed in the renderer process for that window. 3 | // All of the Node.js APIs are available in this process. 4 | -------------------------------------------------------------------------------- /GettingStarted/screenshots/GettingStarted.PNG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/GettingStarted/screenshots/GettingStarted.PNG -------------------------------------------------------------------------------- /GettingStarted/screenshots/electron-quick-start.PNG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/GettingStarted/screenshots/electron-quick-start.PNG -------------------------------------------------------------------------------- /PepperPlugin/src/PPApi/targetver.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | // Including SDKDDKVer.h defines the highest available Windows platform. 4 | 5 | // If you wish to build your application for a previous Windows platform, include WinSDKVer.h and 6 | // set the _WIN32_WINNT macro to the platform you wish to support before including SDKDDKVer.h. 7 | 8 | #include 9 | -------------------------------------------------------------------------------- /PepperPlugin/src/PepperPlugin/PepperPlugin.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | namespace pepper { 4 | 5 | bool debugMode; 6 | #define DBG(...) if (debugMode) { printf(__VA_ARGS__); printf("\n"); } 7 | } 8 | -------------------------------------------------------------------------------- /PepperPlugin/src/PepperPlugin/pepper_entrypoints.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | #ifndef PEPPER_ENTRYPOINTS_H_ 4 | #define PEPPER_ENTRYPOINTS_H_ 5 | 6 | // Windows headers will redefine SendMessage. 7 | #ifdef SendMessage 8 | #undef SendMessage 9 | #endif 10 | 11 | #include "all_ppapi_c_includes.h" 12 | #include "all_ppapi_cpp_includes.h" 13 | 14 | #ifndef PEPPER_EXPORT 15 | #if WIN32 16 | #define PEPPER_EXPORT __declspec(dllexport) 17 | #else 18 | #define PEPPER_EXPORT __attribute__((cdecl)) 19 | #endif 20 | #endif 21 | 22 | 23 | #endif /* PEPPER_ENTRYPOINTS_H_ */ 24 | 25 | -------------------------------------------------------------------------------- /PepperSharp/binding/pp_stdint.cs: -------------------------------------------------------------------------------- 1 | /* Copyright (c) 2016 Xamarin. */ 2 | 3 | /* NOTE: this is auto-generated from IDL */ 4 | /* From pp_stdint.idl modified Thu May 12 06:59:59 2016. */ 5 | 6 | using System; 7 | using System.Runtime.InteropServices; 8 | 9 | namespace PepperSharp { 10 | 11 | /** 12 | * @file 13 | * This file provides a definition of C99 sized types 14 | * for Microsoft compilers. These definitions only apply 15 | * for trusted modules. 16 | */ 17 | 18 | 19 | 20 | } 21 | -------------------------------------------------------------------------------- /Tools/binding/README.md: -------------------------------------------------------------------------------- 1 | C# and Pepper C++ binding modules 2 | === 3 | 4 | This is where the binding generator source is contained. 5 | 6 | To generate the C# bindings and the C++ PepperPlugin dll entrypoints do the following: 7 | 8 | ```shell 9 | > cd generators 10 | \WebSharp\Tools\binding\generators>python generator.py --wnone --range=start,end --csgen --cs-enum_prefix --pepper 11 | ``` 12 | 13 | This will create two directories in the ```binding``` folder. 14 | 15 | - peppersharp - This is where the C# modules are generated. 16 | - pepper - This is where the .dll entry point bindings for the PepperPlugin are generated. 17 | -------------------------------------------------------------------------------- /Tools/binding/api/pp_directory_entry.idl: -------------------------------------------------------------------------------- 1 | /* Copyright (c) 2013 The Chromium Authors. All rights reserved. 2 | * Use of this source code is governed by a BSD-style license that can be 3 | * found in the LICENSE file. 4 | */ 5 | 6 | /* 7 | * This file defines the PP_DirectoryEntry struct. 8 | */ 9 | 10 | [assert_size(8)] 11 | struct PP_DirectoryEntry { 12 | PP_Resource file_ref; 13 | PP_FileType file_type; 14 | }; 15 | -------------------------------------------------------------------------------- /Tools/binding/generators/OWNERS: -------------------------------------------------------------------------------- 1 | bradnelson@chromium.org 2 | noelallen@chromium.org 3 | noelallen@google.com 4 | sehr@chromium.org 5 | sehr@google.com 6 | yzshen@chromium.org 7 | -------------------------------------------------------------------------------- /Tools/binding/generators/ply/__init__.py: -------------------------------------------------------------------------------- 1 | # PLY package 2 | # Author: David Beazley (dave@dabeaz.com) 3 | 4 | __version__ = '3.7' 5 | __all__ = ['lex','yacc'] 6 | -------------------------------------------------------------------------------- /Tools/generator-electron-dotnet/.gitignore: -------------------------------------------------------------------------------- 1 | /node_modules -------------------------------------------------------------------------------- /Tools/generator-electron-dotnet/.travis.yml: -------------------------------------------------------------------------------- 1 | language: node_js 2 | node_js: 3 | - "6.6.0" 4 | - "4.5" 5 | -------------------------------------------------------------------------------- /Tools/generator-electron-dotnet/generators/app/env.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | electronVersion: '^1.4.0' 3 | } 4 | -------------------------------------------------------------------------------- /Tools/generator-electron-dotnet/generators/app/templates/dotnet-plugin/gitignore: -------------------------------------------------------------------------------- 1 | node_modules -------------------------------------------------------------------------------- /Tools/generator-electron-dotnet/generators/app/templates/dotnet-plugin/jsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | // See https://go.microsoft.com/fwlink/?LinkId=759670 3 | // for the documentation about the jsconfig.json format 4 | "compilerOptions": { 5 | "target": "es6", 6 | "module": "commonjs", 7 | "allowSyntheticDefaultImports": true 8 | }, 9 | "exclude": [ 10 | "node_modules", 11 | "bower_components", 12 | "jspm_packages", 13 | "tmp", 14 | "temp" 15 | ] 16 | } -------------------------------------------------------------------------------- /Tools/generator-electron-dotnet/generators/app/templates/dotnet-plugin/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": <%- JSON.stringify(name) %>, 3 | "displayName": <%- JSON.stringify(displayName) %>, 4 | "description": <%- JSON.stringify(description) %>, 5 | "version": "0.0.1", 6 | "publisher": <%- JSON.stringify(publisher) %>, 7 | "main": "main.js", 8 | "scripts": { 9 | "start": "electron ." 10 | }, 11 | "devDependencies": { 12 | "electron": <%- JSON.stringify(electronprebuilt) %> 13 | } 14 | } -------------------------------------------------------------------------------- /Tools/generator-electron-dotnet/generators/app/templates/dotnet-plugin/renderer.js: -------------------------------------------------------------------------------- 1 | // This file is required by the index.html file and will 2 | // be executed in the renderer process for that window. 3 | // All of the Node.js APIs are available in this process. 4 | -------------------------------------------------------------------------------- /Tools/generator-electron-dotnet/generators/app/templates/dotnet-plugin/src/dotnet-plugin.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | using PepperSharp; 4 | 5 | namespace <%= className %> 6 | { 7 | public class <%= className %> : Instance 8 | { 9 | public <%= className %> (IntPtr handle) : base(handle) 10 | { 11 | Initialize += OnInitialize; 12 | } 13 | 14 | private void OnInitialize(object sender, InitializeEventArgs args) 15 | { 16 | LogToConsoleWithSource(PPLogLevel.Log, "<%= className %>.<%= className %>", "Hello from C#"); 17 | } 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /Tools/generator-electron-dotnet/generators/app/templates/dotnet-plugin/src/project.json: -------------------------------------------------------------------------------- 1 | { 2 | "version": "1.0.0-*", 3 | "buildOptions": { 4 | "debugType": "portable", 5 | "emitEntryPoint": false, 6 | "outputName": <%- JSON.stringify(name) %>, 7 | "languageVersion": "csharp6" 8 | }, 9 | "dependencies": { 10 | "Xamarin.PepperSharp" : { "version": "*"} 11 | }, 12 | "frameworks": { 13 | "net451": {} 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /Tools/generator-electron-dotnet/generators/app/templates/dotnet-plugin/vscode/settings.json: -------------------------------------------------------------------------------- 1 | // Place your settings in this file to overwrite default and user settings. 2 | { 3 | "typescript.tsdk": "./node_modules/typescript/lib" // we want to use the TS server from our node_modules folder to control its version 4 | } -------------------------------------------------------------------------------- /Tools/generator-electron-dotnet/generators/app/templates/dotnet-plugin/vscodeignore: -------------------------------------------------------------------------------- 1 | .vscode/** 2 | .vscode-test/** 3 | test/** 4 | .gitignore 5 | jsconfig.json 6 | electron-dotnet-quickstart.md 7 | .eslintrc.json 8 | -------------------------------------------------------------------------------- /Tools/generator-electron-dotnet/generators/app/templates/dotnet-sharp-plugin/gitignore: -------------------------------------------------------------------------------- 1 | node_modules -------------------------------------------------------------------------------- /Tools/generator-electron-dotnet/generators/app/templates/dotnet-sharp-plugin/jsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | // See https://go.microsoft.com/fwlink/?LinkId=759670 3 | // for the documentation about the jsconfig.json format 4 | "compilerOptions": { 5 | "target": "es6", 6 | "module": "commonjs", 7 | "allowSyntheticDefaultImports": true 8 | }, 9 | "exclude": [ 10 | "node_modules", 11 | "bower_components", 12 | "jspm_packages", 13 | "tmp", 14 | "temp" 15 | ] 16 | } -------------------------------------------------------------------------------- /Tools/generator-electron-dotnet/generators/app/templates/dotnet-sharp-plugin/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": <%- JSON.stringify(name) %>, 3 | "displayName": <%- JSON.stringify(displayName) %>, 4 | "description": <%- JSON.stringify(description) %>, 5 | "version": "0.0.1", 6 | "publisher": <%- JSON.stringify(publisher) %>, 7 | "main": "main.js", 8 | "scripts": { 9 | "start": "electron ." 10 | }, 11 | "devDependencies": { 12 | "electron": <%- JSON.stringify(electronprebuilt) %> 13 | } 14 | } -------------------------------------------------------------------------------- /Tools/generator-electron-dotnet/generators/app/templates/dotnet-sharp-plugin/renderer.js: -------------------------------------------------------------------------------- 1 | // This file is required by the index.html file and will 2 | // be executed in the renderer process for that window. 3 | // All of the Node.js APIs are available in this process. 4 | var hello = require("./src/<%- name %>.js"); 5 | 6 | hello.sayHello(); 7 | -------------------------------------------------------------------------------- /Tools/generator-electron-dotnet/generators/app/templates/dotnet-sharp-plugin/src/dotnet-plugin.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | using PepperSharp; 4 | 5 | namespace <%= className %> 6 | { 7 | public class <%= className %> : Instance 8 | { 9 | public <%= className %> (IntPtr handle) : base(handle) 10 | { 11 | Initialize += OnInitialize; 12 | } 13 | 14 | private void OnInitialize(object sender, InitializeEventArgs args) 15 | { 16 | LogToConsoleWithSource(PPLogLevel.Log, "<%= className %>.<%= className %>", "Hello from C#"); 17 | } 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /Tools/generator-electron-dotnet/generators/app/templates/dotnet-sharp-plugin/src/dotnet.js: -------------------------------------------------------------------------------- 1 | var dotnet = require('electron-dotnet'); 2 | 3 | var hello = dotnet.func('async (input) => { return ".NET welcomes " + input.ToString(); }'); 4 | 5 | //Make method externaly visible this will be referenced in the renderer.js file 6 | exports.sayHello = arg => { 7 | hello('Electron', function (error, result) { 8 | if (error) throw error; 9 | console.log(result); 10 | }); 11 | } -------------------------------------------------------------------------------- /Tools/generator-electron-dotnet/generators/app/templates/dotnet-sharp-plugin/src/project.json: -------------------------------------------------------------------------------- 1 | { 2 | "version": "1.0.0-*", 3 | "buildOptions": { 4 | "debugType": "portable", 5 | "emitEntryPoint": false, 6 | "outputName": <%- JSON.stringify(name) %>, 7 | "languageVersion": "csharp6" 8 | }, 9 | "dependencies": { 10 | "Xamarin.PepperSharp" : { "version": "*"} 11 | }, 12 | "frameworks": { 13 | "net451": {} 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /Tools/generator-electron-dotnet/generators/app/templates/dotnet-sharp-plugin/vscode/settings.json: -------------------------------------------------------------------------------- 1 | // Place your settings in this file to overwrite default and user settings. 2 | { 3 | "typescript.tsdk": "./node_modules/typescript/lib" // we want to use the TS server from our node_modules folder to control its version 4 | } -------------------------------------------------------------------------------- /Tools/generator-electron-dotnet/generators/app/templates/dotnet-sharp-plugin/vscodeignore: -------------------------------------------------------------------------------- 1 | .vscode/** 2 | .vscode-test/** 3 | test/** 4 | .gitignore 5 | jsconfig.json 6 | electron-dotnet-quickstart.md 7 | .eslintrc.json 8 | -------------------------------------------------------------------------------- /Tools/generator-electron-dotnet/generators/app/templates/dotnet-sharp/gitignore: -------------------------------------------------------------------------------- 1 | node_modules -------------------------------------------------------------------------------- /Tools/generator-electron-dotnet/generators/app/templates/dotnet-sharp/jsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | // See https://go.microsoft.com/fwlink/?LinkId=759670 3 | // for the documentation about the jsconfig.json format 4 | "compilerOptions": { 5 | "target": "es6", 6 | "module": "commonjs", 7 | "allowSyntheticDefaultImports": true 8 | }, 9 | "exclude": [ 10 | "node_modules", 11 | "bower_components", 12 | "jspm_packages", 13 | "tmp", 14 | "temp" 15 | ] 16 | } -------------------------------------------------------------------------------- /Tools/generator-electron-dotnet/generators/app/templates/dotnet-sharp/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": <%- JSON.stringify(name) %>, 3 | "displayName": <%- JSON.stringify(displayName) %>, 4 | "description": <%- JSON.stringify(description) %>, 5 | "version": "0.0.1", 6 | "publisher": <%- JSON.stringify(publisher) %>, 7 | "main": "main.js", 8 | "scripts": { 9 | "start": "electron ." 10 | }, 11 | "devDependencies": { 12 | "electron": <%- JSON.stringify(electronprebuilt) %> 13 | } 14 | } -------------------------------------------------------------------------------- /Tools/generator-electron-dotnet/generators/app/templates/dotnet-sharp/renderer.js: -------------------------------------------------------------------------------- 1 | // This file is required by the index.html file and will 2 | // be executed in the renderer process for that window. 3 | // All of the Node.js APIs are available in this process. 4 | var hello = require("./src/<%- name %>.js"); 5 | 6 | hello.sayHello(); 7 | -------------------------------------------------------------------------------- /Tools/generator-electron-dotnet/generators/app/templates/dotnet-sharp/src/dotnet.js: -------------------------------------------------------------------------------- 1 | var dotnet = require('electron-dotnet'); 2 | 3 | var hello = dotnet.func('async (input) => { return ".NET welcomes " + input.ToString(); }'); 4 | 5 | //Make method externaly visible this will be referenced in the renderer.js file 6 | exports.sayHello = arg => { 7 | hello('Electron', function (error, result) { 8 | if (error) throw error; 9 | console.log(result); 10 | }); 11 | } -------------------------------------------------------------------------------- /Tools/generator-electron-dotnet/generators/app/templates/dotnet-sharp/vscode/settings.json: -------------------------------------------------------------------------------- 1 | // Place your settings in this file to overwrite default and user settings. 2 | { 3 | "typescript.tsdk": "./node_modules/typescript/lib" // we want to use the TS server from our node_modules folder to control its version 4 | } -------------------------------------------------------------------------------- /Tools/generator-electron-dotnet/generators/app/templates/dotnet-sharp/vscodeignore: -------------------------------------------------------------------------------- 1 | .vscode/** 2 | .vscode-test/** 3 | test/** 4 | .gitignore 5 | jsconfig.json 6 | electron-dotnet-quickstart.md 7 | .eslintrc.json 8 | -------------------------------------------------------------------------------- /Tools/generator-electron-dotnet/generators/app/templates/dotnet-websharp/gitignore: -------------------------------------------------------------------------------- 1 | node_modules -------------------------------------------------------------------------------- /Tools/generator-electron-dotnet/generators/app/templates/dotnet-websharp/jsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | // See https://go.microsoft.com/fwlink/?LinkId=759670 3 | // for the documentation about the jsconfig.json format 4 | "compilerOptions": { 5 | "target": "es6", 6 | "module": "commonjs", 7 | "allowSyntheticDefaultImports": true 8 | }, 9 | "exclude": [ 10 | "node_modules", 11 | "bower_components", 12 | "jspm_packages", 13 | "tmp", 14 | "temp" 15 | ] 16 | } -------------------------------------------------------------------------------- /Tools/generator-electron-dotnet/generators/app/templates/dotnet-websharp/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": <%- JSON.stringify(name) %>, 3 | "displayName": <%- JSON.stringify(displayName) %>, 4 | "description": <%- JSON.stringify(description) %>, 5 | "version": "0.0.1", 6 | "publisher": <%- JSON.stringify(publisher) %>, 7 | "main": "main.js", 8 | "scripts": { 9 | "start": "electron ." 10 | }, 11 | "devDependencies": { 12 | "electron": <%- JSON.stringify(electronprebuilt) %> 13 | } 14 | } -------------------------------------------------------------------------------- /Tools/generator-electron-dotnet/generators/app/templates/dotnet-websharp/renderer.js: -------------------------------------------------------------------------------- 1 | // This file is required by the index.html file and will 2 | // be executed in the renderer process for that window. 3 | // All of the Node.js APIs are available in this process. 4 | var hello = require("./src/<%- name %>.js"); 5 | 6 | hello.sayHello(); 7 | -------------------------------------------------------------------------------- /Tools/generator-electron-dotnet/generators/app/templates/dotnet-websharp/src/packages.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /Tools/generator-electron-dotnet/generators/app/templates/dotnet-websharp/src/websharp.js: -------------------------------------------------------------------------------- 1 | var dotnet = require('electron-dotnet'); 2 | 3 | //var hello = dotnet.func(__dirname + "/<%- wsClassName %>/bin/Debug/<%- wsClassName %>.dll"); 4 | var hello = dotnet.func(__dirname + "/<%- wsClassName %>/<%- wsClassName %>.cs"); 5 | 6 | //Make method externaly visible this will be referenced in the renderer.js file 7 | exports.sayHello = arg => { 8 | hello('<%- wsClassName %>', function (error, result) { 9 | if (error) throw error; 10 | if (result) console.log(result); 11 | }); 12 | } -------------------------------------------------------------------------------- /Tools/generator-electron-dotnet/generators/app/templates/dotnet-websharp/vscode/settings.json: -------------------------------------------------------------------------------- 1 | // Place your settings in this file to overwrite default and user settings. 2 | { 3 | "typescript.tsdk": "./node_modules/typescript/lib" // we want to use the TS server from our node_modules folder to control its version 4 | } -------------------------------------------------------------------------------- /Tools/generator-electron-dotnet/generators/app/templates/dotnet-websharp/vscodeignore: -------------------------------------------------------------------------------- 1 | .vscode/** 2 | .vscode-test/** 3 | test/** 4 | .gitignore 5 | jsconfig.json 6 | electron-dotnet-quickstart.md 7 | .eslintrc.json 8 | -------------------------------------------------------------------------------- /Tools/generator-electron-dotnet/jsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "target": "ES5", 4 | "module": "commonjs" 5 | }, 6 | "exclude": [ 7 | "node_modules" 8 | ] 9 | } -------------------------------------------------------------------------------- /Tools/generator-electron-dotnet/test/fixtures/tmsnippets/Assert.tmSnippet: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | content 6 | self.assert_(${1:boolean expression}${2:, '${3:message}'})$0 7 | name 8 | Assert 9 | scope 10 | source.python 11 | tabTrigger 12 | as 13 | uuid 14 | AD5B91E1-7DF0-4E4C-B794-591640FAFD08 15 | 16 | 17 | -------------------------------------------------------------------------------- /Tools/generator-electron-dotnet/yoelectrondotnet.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/Tools/generator-electron-dotnet/yoelectrondotnet.png -------------------------------------------------------------------------------- /docs/README.md: -------------------------------------------------------------------------------- 1 | # Document Guide 2 | 3 | | Folder | Description | 4 | | --- | --- | 5 | | [getting-started](./getting-started) | Contains a list of documents on Getting Started developing with WebSharp | 6 | | [tutorials](./tutorials) | Contains tutorials about specific elements of WebSharpJs, Electron app development, Accessing the DOM etc... | 7 | | [bindings](./bindings) | Contains specific progress on the bindings that are in development | 8 | | [vsc](./vsc) | Old documents and need updating | -------------------------------------------------------------------------------- /docs/bindings/README.md: -------------------------------------------------------------------------------- 1 | # Bindings Guide 2 | 3 | | Folder | Description | 4 | | --- | --- | 5 | | [electron](./electron) | Status of bindings specific to the Electron | 6 | 7 | 8 | -------------------------------------------------------------------------------- /docs/bindings/electron/api/crash-reporter.md: -------------------------------------------------------------------------------- 1 | # app 2 | 3 | ## Methods 4 | 5 | - [x] `crashReporter.start(options)` 6 | - [x] `crashReporter.getLastCrashReport()` 7 | - [x] `crashReporter.getUploadedReports()` 8 | - [x] `crashReporter.getUploadToServer()` _Linux_ _macOS_ 9 | - [x] `crashReporter.setUploadToServer(uploadToServer)` _Linux_ _macOS_ 10 | - [x] `crashReporter.setExtraParameter(key, value)` _macOS_ -------------------------------------------------------------------------------- /docs/bindings/electron/api/desktop-capturer.md: -------------------------------------------------------------------------------- 1 | # desktopCapturer 2 | 3 | ## Methods 4 | 5 | - [x] `desktopCapturer.getSources(options, callback)` 6 | -------------------------------------------------------------------------------- /docs/bindings/electron/api/global-shortcut.md: -------------------------------------------------------------------------------- 1 | # globalShortcut 2 | 3 | ## Methods 4 | 5 | - [x] `globalShortcut.register(accelerator, callback)` 6 | - [x] `globalShortcut.isRegistered(accelerator)` 7 | - [x] `globalShortcut.unregister(accelerator)` 8 | - [x] `globalShortcut.unregisterAll()` 9 | -------------------------------------------------------------------------------- /docs/bindings/electron/api/ipc-main.md: -------------------------------------------------------------------------------- 1 | # ipcMain 2 | 3 | ## Methods 4 | 5 | - [x] `ipcMain.on(channel, listener)` 6 | - [x] `ipcMain.once(channel, listener)` 7 | - [x] `ipcMain.removeListener(channel, listener)` 8 | - [x] `ipcMain.removeAllListeners([channel])` 9 | -------------------------------------------------------------------------------- /docs/bindings/electron/api/ipc-renderer.md: -------------------------------------------------------------------------------- 1 | # ipcRenderer 2 | 3 | ## Methods 4 | 5 | - [x] `ipcRenderer.on(channel, listener)` 6 | - [x] `ipcRenderer.once(channel, listener)` 7 | - [x] `ipcRenderer.removeListener(channel, listener)` 8 | - [x] `ipcRenderer.removeAllListeners([channel])` 9 | - [x] `ipcRenderer.send(channel[, arg1][, arg2][, ...])` 10 | - [x] `ipcRenderer.sendSync(channel[, arg1][, arg2][, ...])` 11 | - [x] `ipcRenderer.sendToHost(channel[, arg1][, arg2][, ...])` 12 | -------------------------------------------------------------------------------- /docs/bindings/electron/api/menu-item.md: -------------------------------------------------------------------------------- 1 | # MenuItem 2 | 3 | - [x] `new MenuItem(options)` 4 | 5 | - [x] `options` 6 | - [x] `click` 7 | - [x] `role` 8 | - [x] `type` 9 | - [x] `label` 10 | - [x] `sublabel` 11 | - [x] `accelerator` [Accelerator](accelerator.md) 12 | - [x] `icon` [NativeImage](native-image.md) 13 | - [x] `enabled 14 | - [x] `visible` 15 | - [x] `checked` 16 | - [x] `submenu` 17 | - [x] `id` 18 | - [x] `position` 19 | - [x] `Roles` 20 | - [x] `menuItem.enabled` 21 | - [x] `menuItem.visible` 22 | - [x] `menuItem.checked` 23 | - [x] `menuItem.label` 24 | - [x] `menuItem.click` 25 | -------------------------------------------------------------------------------- /docs/bindings/electron/api/menu.md: -------------------------------------------------------------------------------- 1 | # Menu 2 | 3 | - [x] `new Menu()` 4 | - [x] `Menu.setApplicationMenu(menu)` 5 | - [x] `Menu.getApplicationMenu()` 6 | - [x] `Menu.sendActionToFirstResponder(action)` _macOS_ 7 | - [x] `Menu.buildFromTemplate(template)` 8 | - [x] `menu.popup([browserWindow, options])` 9 | - [x] `menu.closePopup([browserWindow])` 10 | - [x] `menu.append(menuItem)` 11 | - [x] `menu.insert(pos, menuItem)` 12 | - [x] `menu.items` 13 | -------------------------------------------------------------------------------- /docs/bindings/electron/api/power-monitor.md: -------------------------------------------------------------------------------- 1 | # powerMonitor 2 | 3 | ## Events 4 | 5 | - [x] Event: 'suspend' 6 | - [x] Event: 'resume' 7 | - [x] Event: 'on-ac' _Windows_ 8 | - [x] Event: 'on-battery' _Windows_ -------------------------------------------------------------------------------- /docs/bindings/electron/api/power-save-blocker.md: -------------------------------------------------------------------------------- 1 | # powerSaveBlocker 2 | 3 | ## Methods 4 | 5 | - [x] `powerSaveBlocker.start(type)` 6 | - [x] `powerSaveBlocker.stop(id)` 7 | - [x] `powerSaveBlocker.isStarted(id)` -------------------------------------------------------------------------------- /docs/bindings/electron/api/screen.md: -------------------------------------------------------------------------------- 1 | # Screen 2 | 3 | ## Methods 4 | 5 | - [x] `screen.getCursorScreenPoint()` 6 | - [x] `screen.getMenuBarHeight()` _macOS_ 7 | - [x] `screen.getPrimaryDisplay()` 8 | - [x] `screen.getAllDisplays()` 9 | - [x] `screen.getDisplayNearestPoint(point)` 10 | - [x] `screen.getDisplayMatching(rect)` -------------------------------------------------------------------------------- /docs/bindings/electron/api/shell.md: -------------------------------------------------------------------------------- 1 | # shell 2 | 3 | ## Methods 4 | 5 | - [x] `shell.showItemInFolder(fullPath)` 6 | - [x] `shell.openItem(fullPath)` 7 | - [x] `shell.openExternal(url[, options, callback])` 8 | - [x] `shell.moveItemToTrash(fullPath)` 9 | - [x] `shell.beep()` 10 | - [x] `shell.writeShortcutLink(shortcutPath[, operation], options)` _Windows_ 11 | - [x] `shell.readShortcutLink(shortcutPath)` _Windows_ -------------------------------------------------------------------------------- /docs/bindings/electron/api/tray.md: -------------------------------------------------------------------------------- 1 | # tray 2 | 3 | ## Methods 4 | 5 | - [x] `tray.destroy()` 6 | - [x] `tray.setImage(image)` 7 | - [x] `tray.setPressedImage(image)` _macOS_ 8 | - [x] `tray.setToolTip(toolTip)` 9 | - [x] `tray.setTitle(title)` _macOS_ 10 | - [x] `tray.setHighlightMode(mode)` _macOS_ 11 | - [x] `tray.displayBalloon(options)` _Windows_ 12 | - [x] `tray.popUpContextMenu([menu, position])` _macOS_ _Windows_ 13 | - [x] `tray.setContextMenu(menu)` 14 | - [x] `tray.getBounds()` _macOS_ _Windows_ 15 | - [x] `tray.isDestroyed()` 16 | -------------------------------------------------------------------------------- /docs/bindings/electron/api/web-request.md: -------------------------------------------------------------------------------- 1 | # webRequest 2 | 3 | ## Methods 4 | 5 | - [x] `webRequest.onBeforeRequest([filter, ]listener)` 6 | - [x] `webRequest.onBeforeSendHeaders([filter, ]listener)` 7 | - [x] `webRequest.onSendHeaders([filter, ]listener)` 8 | - [x] `webRequest.onHeadersReceived([filter, ]listener)` 9 | - [x] `webRequest.onResponseStarted([filter, ]listener)` 10 | - [x] `webRequest.onBeforeRedirect([filter, ]listener)` 11 | - [x] `webRequest.onCompleted([filter, ]listener)` 12 | - [x] `webRequest.onErrorOccurred([filter, ]listener)` -------------------------------------------------------------------------------- /docs/en/ns-PepperSharp.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | To be added. 4 | To be added. 5 | 6 | 7 | -------------------------------------------------------------------------------- /docs/getting-started/screenshots/hello-world-console.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/getting-started/screenshots/hello-world-console.png -------------------------------------------------------------------------------- /docs/getting-started/screenshots/hello-world.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/getting-started/screenshots/hello-world.png -------------------------------------------------------------------------------- /docs/getting-started/screenshots/mono-path-win32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/getting-started/screenshots/mono-path-win32.png -------------------------------------------------------------------------------- /docs/getting-started/screenshots/yogen-wsa-mac-ask.PNG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/getting-started/screenshots/yogen-wsa-mac-ask.PNG -------------------------------------------------------------------------------- /docs/getting-started/screenshots/yogen-wsa-mac-finish.PNG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/getting-started/screenshots/yogen-wsa-mac-finish.PNG -------------------------------------------------------------------------------- /docs/getting-started/screenshots/yogen-wsa-mac-install.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/getting-started/screenshots/yogen-wsa-mac-install.png -------------------------------------------------------------------------------- /docs/getting-started/screenshots/yogen-wsa-mac.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/getting-started/screenshots/yogen-wsa-mac.png -------------------------------------------------------------------------------- /docs/tutorials/DOM/README.md: -------------------------------------------------------------------------------- 1 | # DOM Tutorial Guide 2 | 3 | | Folder/File | Description | 4 | | --- | --- | 5 | | [overview](./overview.md) | Overview of accessing the DOM | 6 | | [browserinfo](./browserinfo) | Show the information returned from `HtmlPage.GetBrowserInformation()`. | 7 | | [domtree](./domtree) | Shows the traversal of the page DOM document. | 8 | | [domelement](./domelement) | Example of tinkering with HTML DOM Elements | 9 | | [dragndrop](./dragndrop) | Example of Drag And Drop events | -------------------------------------------------------------------------------- /docs/tutorials/DOM/browserinfo/.eslintrc.json: -------------------------------------------------------------------------------- 1 | { 2 | "env": { 3 | "browser": false, 4 | "commonjs": true, 5 | "es6": true, 6 | "node": true 7 | }, 8 | "parserOptions": { 9 | "ecmaFeatures": { 10 | "jsx": true 11 | }, 12 | "sourceType": "module" 13 | }, 14 | "rules": { 15 | "no-const-assign": "warn", 16 | "no-this-before-super": "warn", 17 | "no-undef": "warn", 18 | "no-unreachable": "warn", 19 | "no-unused-vars": "warn", 20 | "constructor-super": "warn", 21 | "valid-typeof": "warn" 22 | } 23 | } -------------------------------------------------------------------------------- /docs/tutorials/DOM/browserinfo/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules -------------------------------------------------------------------------------- /docs/tutorials/DOM/browserinfo/.vscode/settings.json: -------------------------------------------------------------------------------- 1 | // Place your settings in this file to overwrite default and user settings. 2 | { 3 | "typescript.tsdk": "./node_modules/typescript/lib" // we want to use the TS server from our node_modules folder to control its version 4 | } -------------------------------------------------------------------------------- /docs/tutorials/DOM/browserinfo/.vscodeignore: -------------------------------------------------------------------------------- 1 | .vscode/** 2 | .vscode-test/** 3 | test/** 4 | .gitignore 5 | jsconfig.json 6 | electron-dotnet-quickstart.md 7 | .eslintrc.json 8 | -------------------------------------------------------------------------------- /docs/tutorials/DOM/browserinfo/images/browserinformation-win.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/tutorials/DOM/browserinfo/images/browserinformation-win.png -------------------------------------------------------------------------------- /docs/tutorials/DOM/browserinfo/images/browserinformation.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/tutorials/DOM/browserinfo/images/browserinformation.png -------------------------------------------------------------------------------- /docs/tutorials/DOM/browserinfo/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | BrowserInformation 6 | 7 | 8 |

BrowserInformation

9 | 10 |

11 | 12 | 13 | 17 | -------------------------------------------------------------------------------- /docs/tutorials/DOM/browserinfo/jsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | // See https://go.microsoft.com/fwlink/?LinkId=759670 3 | // for the documentation about the jsconfig.json format 4 | "compilerOptions": { 5 | "target": "es6", 6 | "module": "commonjs", 7 | "allowSyntheticDefaultImports": true 8 | }, 9 | "exclude": [ 10 | "node_modules", 11 | "bower_components", 12 | "jspm_packages", 13 | "tmp", 14 | "temp" 15 | ] 16 | } -------------------------------------------------------------------------------- /docs/tutorials/DOM/browserinfo/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "browserinformation", 3 | "displayName": "BrowserInformation", 4 | "description": "Show the information returned from HtmlPage.BrowserInformation", 5 | "version": "1.0.0", 6 | "publisher": "Xamarin", 7 | "main": "main.js", 8 | "scripts": { 9 | "start": "electron ." 10 | }, 11 | "devDependencies": { 12 | "electron": "^1.4.0" 13 | } 14 | } -------------------------------------------------------------------------------- /docs/tutorials/DOM/browserinfo/renderer.js: -------------------------------------------------------------------------------- 1 | // This file is required by the index.html file and will 2 | // be executed in the renderer process for that window. 3 | // All of the Node.js APIs are available in this process. 4 | var hello = require("./src/browserinformation.js"); 5 | 6 | hello.sayHello(); 7 | -------------------------------------------------------------------------------- /docs/tutorials/DOM/browserinfo/src/Information/Information.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | net451 5 | .\bin\$(Configuration)\ 6 | $(OutputPath) 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /docs/tutorials/DOM/browserinfo/src/Information/packages.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /docs/tutorials/DOM/browserinfo/src/Main/MainWindow.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | net451 5 | .\bin\$(Configuration)\ 6 | $(OutputPath) 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /docs/tutorials/DOM/browserinfo/src/Main/packages.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /docs/tutorials/DOM/browserinfo/src/browserinformation.js: -------------------------------------------------------------------------------- 1 | var dotnet = require('electron-dotnet'); 2 | 3 | //var hello = dotnet.func("./src/Information/bin/Debug/Information.dll"); 4 | var hello = dotnet.func("./src/Information/Information.cs"); 5 | 6 | //Make method externaly visible this will be referenced in the renderer.js file 7 | exports.sayHello = arg => { 8 | hello('Information', function (error, result) { 9 | if (error) throw error; 10 | if (result) console.log(result); 11 | }); 12 | } -------------------------------------------------------------------------------- /docs/tutorials/DOM/domelement/.eslintrc.json: -------------------------------------------------------------------------------- 1 | { 2 | "env": { 3 | "browser": false, 4 | "commonjs": true, 5 | "es6": true, 6 | "node": true 7 | }, 8 | "parserOptions": { 9 | "ecmaFeatures": { 10 | "jsx": true 11 | }, 12 | "sourceType": "module" 13 | }, 14 | "rules": { 15 | "no-const-assign": "warn", 16 | "no-this-before-super": "warn", 17 | "no-undef": "warn", 18 | "no-unreachable": "warn", 19 | "no-unused-vars": "warn", 20 | "constructor-super": "warn", 21 | "valid-typeof": "warn" 22 | } 23 | } -------------------------------------------------------------------------------- /docs/tutorials/DOM/domelement/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules -------------------------------------------------------------------------------- /docs/tutorials/DOM/domelement/.vscode/settings.json: -------------------------------------------------------------------------------- 1 | // Place your settings in this file to overwrite default and user settings. 2 | { 3 | "typescript.tsdk": "./node_modules/typescript/lib" // we want to use the TS server from our node_modules folder to control its version 4 | } -------------------------------------------------------------------------------- /docs/tutorials/DOM/domelement/.vscodeignore: -------------------------------------------------------------------------------- 1 | .vscode/** 2 | .vscode-test/** 3 | test/** 4 | .gitignore 5 | jsconfig.json 6 | electron-dotnet-quickstart.md 7 | .eslintrc.json 8 | -------------------------------------------------------------------------------- /docs/tutorials/DOM/domelement/images/elementtinkering-win.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/tutorials/DOM/domelement/images/elementtinkering-win.png -------------------------------------------------------------------------------- /docs/tutorials/DOM/domelement/images/elementtinkering.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/tutorials/DOM/domelement/images/elementtinkering.png -------------------------------------------------------------------------------- /docs/tutorials/DOM/domelement/jsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | // See https://go.microsoft.com/fwlink/?LinkId=759670 3 | // for the documentation about the jsconfig.json format 4 | "compilerOptions": { 5 | "target": "es6", 6 | "module": "commonjs", 7 | "allowSyntheticDefaultImports": true 8 | }, 9 | "exclude": [ 10 | "node_modules", 11 | "bower_components", 12 | "jspm_packages", 13 | "tmp", 14 | "temp" 15 | ] 16 | } -------------------------------------------------------------------------------- /docs/tutorials/DOM/domelement/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "domelement", 3 | "displayName": "DomElement", 4 | "description": "Example of tinkering with HTM DOM Elements", 5 | "version": "0.0.1", 6 | "publisher": "Xamarin", 7 | "main": "main.js", 8 | "scripts": { 9 | "start": "electron ." 10 | }, 11 | "devDependencies": { 12 | "electron": "^1.4.0" 13 | } 14 | } -------------------------------------------------------------------------------- /docs/tutorials/DOM/domelement/renderer.js: -------------------------------------------------------------------------------- 1 | // This file is required by the index.html file and will 2 | // be executed in the renderer process for that window. 3 | // All of the Node.js APIs are available in this process. 4 | var hello = require("./src/domelement.js"); 5 | 6 | hello.sayHello(); 7 | -------------------------------------------------------------------------------- /docs/tutorials/DOM/domelement/src/ElementTinkerer/ElementTinkerer.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | net451 5 | .\bin\$(Configuration)\ 6 | $(OutputPath) 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /docs/tutorials/DOM/domelement/src/ElementTinkerer/packages.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /docs/tutorials/DOM/domelement/src/Main/MainWindow.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | net451 5 | .\bin\$(Configuration)\ 6 | $(OutputPath) 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /docs/tutorials/DOM/domelement/src/Main/packages.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /docs/tutorials/DOM/domelement/src/domelement.js: -------------------------------------------------------------------------------- 1 | var dotnet = require('electron-dotnet'); 2 | 3 | //var hello = dotnet.func("./src/ElementTinkerer/bin/Debug/ElementTinkerer.dll"); 4 | var hello = dotnet.func("./src/ElementTinkerer/ElementTinkerer.cs"); 5 | 6 | //Make method externaly visible this will be referenced in the renderer.js file 7 | exports.sayHello = arg => { 8 | hello('ElementTinkerer', function (error, result) { 9 | if (error) throw error; 10 | if (result) console.log(result); 11 | }); 12 | } -------------------------------------------------------------------------------- /docs/tutorials/DOM/domtree/.eslintrc.json: -------------------------------------------------------------------------------- 1 | { 2 | "env": { 3 | "browser": false, 4 | "commonjs": true, 5 | "es6": true, 6 | "node": true 7 | }, 8 | "parserOptions": { 9 | "ecmaFeatures": { 10 | "jsx": true 11 | }, 12 | "sourceType": "module" 13 | }, 14 | "rules": { 15 | "no-const-assign": "warn", 16 | "no-this-before-super": "warn", 17 | "no-undef": "warn", 18 | "no-unreachable": "warn", 19 | "no-unused-vars": "warn", 20 | "constructor-super": "warn", 21 | "valid-typeof": "warn" 22 | } 23 | } -------------------------------------------------------------------------------- /docs/tutorials/DOM/domtree/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules -------------------------------------------------------------------------------- /docs/tutorials/DOM/domtree/.vscode/settings.json: -------------------------------------------------------------------------------- 1 | // Place your settings in this file to overwrite default and user settings. 2 | { 3 | "typescript.tsdk": "./node_modules/typescript/lib" // we want to use the TS server from our node_modules folder to control its version 4 | } -------------------------------------------------------------------------------- /docs/tutorials/DOM/domtree/.vscodeignore: -------------------------------------------------------------------------------- 1 | .vscode/** 2 | .vscode-test/** 3 | test/** 4 | .gitignore 5 | jsconfig.json 6 | electron-dotnet-quickstart.md 7 | .eslintrc.json 8 | -------------------------------------------------------------------------------- /docs/tutorials/DOM/domtree/images/domtraversal-win.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/tutorials/DOM/domtree/images/domtraversal-win.png -------------------------------------------------------------------------------- /docs/tutorials/DOM/domtree/images/domtraversal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/tutorials/DOM/domtree/images/domtraversal.png -------------------------------------------------------------------------------- /docs/tutorials/DOM/domtree/jsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | // See https://go.microsoft.com/fwlink/?LinkId=759670 3 | // for the documentation about the jsconfig.json format 4 | "compilerOptions": { 5 | "target": "es6", 6 | "module": "commonjs", 7 | "allowSyntheticDefaultImports": true 8 | }, 9 | "exclude": [ 10 | "node_modules", 11 | "bower_components", 12 | "jspm_packages", 13 | "tmp", 14 | "temp" 15 | ] 16 | } -------------------------------------------------------------------------------- /docs/tutorials/DOM/domtree/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "domtree", 3 | "displayName": "DOMTree", 4 | "description": "Shows the traversal of the page DOM document.", 5 | "version": "0.0.1", 6 | "publisher": "Xamarin", 7 | "main": "main.js", 8 | "scripts": { 9 | "start": "electron ." 10 | }, 11 | "devDependencies": { 12 | "electron": "^1.4.0" 13 | } 14 | } -------------------------------------------------------------------------------- /docs/tutorials/DOM/domtree/renderer.js: -------------------------------------------------------------------------------- 1 | // This file is required by the index.html file and will 2 | // be executed in the renderer process for that window. 3 | // All of the Node.js APIs are available in this process. 4 | var hello = require("./src/domtree.js"); 5 | 6 | hello.sayHello(); 7 | -------------------------------------------------------------------------------- /docs/tutorials/DOM/domtree/src/DOMInfo/DOMInfo.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | net451 5 | .\bin\$(Configuration)\ 6 | $(OutputPath) 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /docs/tutorials/DOM/domtree/src/DOMInfo/packages.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /docs/tutorials/DOM/domtree/src/Main/MainWindow.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | net451 5 | .\bin\$(Configuration)\ 6 | $(OutputPath) 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /docs/tutorials/DOM/domtree/src/Main/packages.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /docs/tutorials/DOM/domtree/src/domtree.js: -------------------------------------------------------------------------------- 1 | var dotnet = require('electron-dotnet'); 2 | 3 | //var hello = dotnet.func("./src/DOMInfo/bin/Debug/DOMInfo.dll"); 4 | var hello = dotnet.func("./src/DOMInfo/DOMInfo.cs"); 5 | 6 | //Make method externaly visible this will be referenced in the renderer.js file 7 | exports.sayHello = arg => { 8 | hello('DOMInfo', function (error, result) { 9 | if (error) throw error; 10 | if (result) console.log(result); 11 | }); 12 | } -------------------------------------------------------------------------------- /docs/tutorials/DOM/dragndrop/.eslintrc.json: -------------------------------------------------------------------------------- 1 | { 2 | "env": { 3 | "browser": false, 4 | "commonjs": true, 5 | "es6": true, 6 | "node": true 7 | }, 8 | "parserOptions": { 9 | "ecmaFeatures": { 10 | "jsx": true 11 | }, 12 | "sourceType": "module" 13 | }, 14 | "rules": { 15 | "no-const-assign": "warn", 16 | "no-this-before-super": "warn", 17 | "no-undef": "warn", 18 | "no-unreachable": "warn", 19 | "no-unused-vars": "warn", 20 | "constructor-super": "warn", 21 | "valid-typeof": "warn" 22 | } 23 | } -------------------------------------------------------------------------------- /docs/tutorials/DOM/dragndrop/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules -------------------------------------------------------------------------------- /docs/tutorials/DOM/dragndrop/.vscode/settings.json: -------------------------------------------------------------------------------- 1 | // Place your settings in this file to overwrite default and user settings. 2 | { 3 | "typescript.tsdk": "./node_modules/typescript/lib" // we want to use the TS server from our node_modules folder to control its version 4 | } -------------------------------------------------------------------------------- /docs/tutorials/DOM/dragndrop/.vscodeignore: -------------------------------------------------------------------------------- 1 | .vscode/** 2 | .vscode-test/** 3 | test/** 4 | .gitignore 5 | jsconfig.json 6 | electron-dotnet-quickstart.md 7 | .eslintrc.json 8 | -------------------------------------------------------------------------------- /docs/tutorials/DOM/dragndrop/images/dragndrop.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/tutorials/DOM/dragndrop/images/dragndrop.gif -------------------------------------------------------------------------------- /docs/tutorials/DOM/dragndrop/jsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | // See https://go.microsoft.com/fwlink/?LinkId=759670 3 | // for the documentation about the jsconfig.json format 4 | "compilerOptions": { 5 | "target": "es6", 6 | "module": "commonjs", 7 | "allowSyntheticDefaultImports": true 8 | }, 9 | "exclude": [ 10 | "node_modules", 11 | "bower_components", 12 | "jspm_packages", 13 | "tmp", 14 | "temp" 15 | ] 16 | } -------------------------------------------------------------------------------- /docs/tutorials/DOM/dragndrop/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "dragndrop", 3 | "displayName": "DragNDrop", 4 | "description": "Example of Drag And Drop events", 5 | "version": "1.0.0", 6 | "publisher": "Xamarin", 7 | "main": "main.js", 8 | "scripts": { 9 | "start": "electron ." 10 | }, 11 | "devDependencies": { 12 | "electron": "^1.4.0" 13 | } 14 | } -------------------------------------------------------------------------------- /docs/tutorials/DOM/dragndrop/renderer.js: -------------------------------------------------------------------------------- 1 | // This file is required by the index.html file and will 2 | // be executed in the renderer process for that window. 3 | // All of the Node.js APIs are available in this process. 4 | var hello = require("./src/dragndrop.js"); 5 | 6 | hello.sayHello(); 7 | -------------------------------------------------------------------------------- /docs/tutorials/DOM/dragndrop/src/Dragger/packages.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /docs/tutorials/DOM/dragndrop/src/Main/packages.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /docs/tutorials/DOM/dragndrop/src/dragndrop.js: -------------------------------------------------------------------------------- 1 | var dotnet = require('electron-dotnet'); 2 | 3 | //var hello = dotnet.func(__dirname + "/Dragger/bin/Debug/Dragger.dll"); 4 | var hello = dotnet.func(__dirname + "/Dragger/Dragger.cs"); 5 | 6 | //Make method externaly visible this will be referenced in the renderer.js file 7 | exports.sayHello = arg => { 8 | hello('Dragger', function (error, result) { 9 | if (error) throw error; 10 | if (result) console.log(result); 11 | }); 12 | } -------------------------------------------------------------------------------- /docs/tutorials/appicon/.eslintrc.json: -------------------------------------------------------------------------------- 1 | { 2 | "env": { 3 | "browser": false, 4 | "commonjs": true, 5 | "es6": true, 6 | "node": true 7 | }, 8 | "parserOptions": { 9 | "ecmaFeatures": { 10 | "jsx": true 11 | }, 12 | "sourceType": "module" 13 | }, 14 | "rules": { 15 | "no-const-assign": "warn", 16 | "no-this-before-super": "warn", 17 | "no-undef": "warn", 18 | "no-unreachable": "warn", 19 | "no-unused-vars": "warn", 20 | "constructor-super": "warn", 21 | "valid-typeof": "warn" 22 | } 23 | } -------------------------------------------------------------------------------- /docs/tutorials/appicon/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules -------------------------------------------------------------------------------- /docs/tutorials/appicon/.vscode/settings.json: -------------------------------------------------------------------------------- 1 | // Place your settings in this file to overwrite default and user settings. 2 | { 3 | "typescript.tsdk": "./node_modules/typescript/lib" // we want to use the TS server from our node_modules folder to control its version 4 | } -------------------------------------------------------------------------------- /docs/tutorials/appicon/.vscodeignore: -------------------------------------------------------------------------------- 1 | .vscode/** 2 | .vscode-test/** 3 | test/** 4 | .gitignore 5 | jsconfig.json 6 | electron-dotnet-quickstart.md 7 | .eslintrc.json 8 | -------------------------------------------------------------------------------- /docs/tutorials/appicon/images/mac-appicon-main.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/tutorials/appicon/images/mac-appicon-main.gif -------------------------------------------------------------------------------- /docs/tutorials/appicon/images/mac-appicon-managed.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/tutorials/appicon/images/mac-appicon-managed.gif -------------------------------------------------------------------------------- /docs/tutorials/appicon/jsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | // See https://go.microsoft.com/fwlink/?LinkId=759670 3 | // for the documentation about the jsconfig.json format 4 | "compilerOptions": { 5 | "target": "es6", 6 | "module": "commonjs", 7 | "allowSyntheticDefaultImports": true 8 | }, 9 | "exclude": [ 10 | "node_modules", 11 | "bower_components", 12 | "jspm_packages", 13 | "tmp", 14 | "temp" 15 | ] 16 | } -------------------------------------------------------------------------------- /docs/tutorials/appicon/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "appicon", 3 | "displayName": "AppIcon", 4 | "description": "Sets the Application Icon of the app.", 5 | "version": "0.0.1", 6 | "publisher": "Xamarin", 7 | "main": "main.js", 8 | "scripts": { 9 | "start": "electron ." 10 | }, 11 | "devDependencies": { 12 | "electron": "^1.4.0" 13 | } 14 | } -------------------------------------------------------------------------------- /docs/tutorials/appicon/renderer.js: -------------------------------------------------------------------------------- 1 | // This file is required by the index.html file and will 2 | // be executed in the renderer process for that window. 3 | // All of the Node.js APIs are available in this process. 4 | var hello = require("./src/appicon.js"); 5 | 6 | hello.sayHello(); 7 | -------------------------------------------------------------------------------- /docs/tutorials/appicon/resources/appicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/tutorials/appicon/resources/appicon.ico -------------------------------------------------------------------------------- /docs/tutorials/appicon/resources/appicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/tutorials/appicon/resources/appicon.png -------------------------------------------------------------------------------- /docs/tutorials/appicon/src/Iconic/Iconic.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | net451 5 | .\bin\$(Configuration)\ 6 | $(OutputPath) 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /docs/tutorials/appicon/src/Iconic/packages.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /docs/tutorials/appicon/src/Main/MainWindow.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | net451 5 | .\bin\$(Configuration)\ 6 | $(OutputPath) 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /docs/tutorials/appicon/src/Main/packages.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /docs/tutorials/appicon/src/appicon.js: -------------------------------------------------------------------------------- 1 | var dotnet = require('electron-dotnet'); 2 | 3 | //var hello = dotnet.func("./src/Iconic/bin/Debug/Iconic.dll"); 4 | var hello = dotnet.func("./src/Iconic/Iconic.cs"); 5 | 6 | //Make method externaly visible this will be referenced in the renderer.js file 7 | exports.sayHello = arg => { 8 | hello('Iconic', function (error, result) { 9 | if (error) throw error; 10 | if (result) console.log(result); 11 | }); 12 | } -------------------------------------------------------------------------------- /docs/tutorials/convert/.eslintrc.json: -------------------------------------------------------------------------------- 1 | { 2 | "env": { 3 | "browser": false, 4 | "commonjs": true, 5 | "es6": true, 6 | "node": true 7 | }, 8 | "parserOptions": { 9 | "ecmaFeatures": { 10 | "jsx": true 11 | }, 12 | "sourceType": "module" 13 | }, 14 | "rules": { 15 | "no-const-assign": "warn", 16 | "no-this-before-super": "warn", 17 | "no-undef": "warn", 18 | "no-unreachable": "warn", 19 | "no-unused-vars": "warn", 20 | "constructor-super": "warn", 21 | "valid-typeof": "warn" 22 | } 23 | } -------------------------------------------------------------------------------- /docs/tutorials/convert/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | dist -------------------------------------------------------------------------------- /docs/tutorials/convert/.vscode/settings.json: -------------------------------------------------------------------------------- 1 | // Place your settings in this file to overwrite default and user settings. 2 | { 3 | "typescript.tsdk": "./node_modules/typescript/lib" // we want to use the TS server from our node_modules folder to control its version 4 | } -------------------------------------------------------------------------------- /docs/tutorials/convert/.vscodeignore: -------------------------------------------------------------------------------- 1 | .vscode/** 2 | .vscode-test/** 3 | test/** 4 | .gitignore 5 | jsconfig.json 6 | electron-dotnet-quickstart.md 7 | .eslintrc.json 8 | -------------------------------------------------------------------------------- /docs/tutorials/convert/assets/css/styles.css: -------------------------------------------------------------------------------- 1 | body { 2 | margin: 3rem; 3 | cursor: default; 4 | } 5 | -------------------------------------------------------------------------------- /docs/tutorials/convert/assets/icons/appicon.icns: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/tutorials/convert/assets/icons/appicon.icns -------------------------------------------------------------------------------- /docs/tutorials/convert/assets/icons/appicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/tutorials/convert/assets/icons/appicon.ico -------------------------------------------------------------------------------- /docs/tutorials/convert/assets/icons/images/appicon_256x256.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/tutorials/convert/assets/icons/images/appicon_256x256.png -------------------------------------------------------------------------------- /docs/tutorials/convert/build/background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/tutorials/convert/build/background.png -------------------------------------------------------------------------------- /docs/tutorials/convert/build/icon.icns: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/tutorials/convert/build/icon.icns -------------------------------------------------------------------------------- /docs/tutorials/convert/build/icon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/tutorials/convert/build/icon.ico -------------------------------------------------------------------------------- /docs/tutorials/convert/images/asar-screenshot-finder.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/tutorials/convert/images/asar-screenshot-finder.png -------------------------------------------------------------------------------- /docs/tutorials/convert/images/mac-codesign.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/tutorials/convert/images/mac-codesign.png -------------------------------------------------------------------------------- /docs/tutorials/convert/jsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | // See https://go.microsoft.com/fwlink/?LinkId=759670 3 | // for the documentation about the jsconfig.json format 4 | "compilerOptions": { 5 | "target": "es6", 6 | "module": "commonjs", 7 | "allowSyntheticDefaultImports": true 8 | }, 9 | "exclude": [ 10 | "node_modules", 11 | "bower_components", 12 | "jspm_packages", 13 | "tmp", 14 | "temp" 15 | ] 16 | } -------------------------------------------------------------------------------- /docs/tutorials/convert/renderer.js: -------------------------------------------------------------------------------- 1 | // This file is required by the index.html file and will 2 | // be executed in the renderer process for that window. 3 | // All of the Node.js APIs are available in this process. 4 | var hello = require("./src/convert.js"); 5 | 6 | hello.sayHello(); 7 | -------------------------------------------------------------------------------- /docs/tutorials/convert/src/ConvertUI/packages.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /docs/tutorials/convert/src/Main/packages.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /docs/tutorials/convert/src/convert.js: -------------------------------------------------------------------------------- 1 | var dotnet = require('electron-dotnet'); 2 | 3 | if (!require('electron-is-dev')) 4 | var hello = dotnet.func(require('path').join(__dirname, "/ConvertUI/bin/Debug/ConvertUI.dll").replace('app.asar', 'app.asar.unpacked')); 5 | else 6 | var hello = dotnet.func({source : __dirname + "/ConvertUI/ConvertUI.cs", symbols: ["DEV"]}); 7 | 8 | 9 | //Make method externaly visible this will be referenced in the renderer.js file 10 | exports.sayHello = arg => { 11 | hello('ConvertUI', function (error, result) { 12 | if (error) throw error; 13 | if (result) console.log(result); 14 | }); 15 | } -------------------------------------------------------------------------------- /docs/tutorials/convert/src/lib/MediaToolkit.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/tutorials/convert/src/lib/MediaToolkit.dll -------------------------------------------------------------------------------- /docs/tutorials/convert/src/lib/MediaToolkit.pdb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/tutorials/convert/src/lib/MediaToolkit.pdb -------------------------------------------------------------------------------- /docs/tutorials/downloaditem/.eslintrc.json: -------------------------------------------------------------------------------- 1 | { 2 | "env": { 3 | "browser": false, 4 | "commonjs": true, 5 | "es6": true, 6 | "node": true 7 | }, 8 | "parserOptions": { 9 | "ecmaFeatures": { 10 | "jsx": true 11 | }, 12 | "sourceType": "module" 13 | }, 14 | "rules": { 15 | "no-const-assign": "warn", 16 | "no-this-before-super": "warn", 17 | "no-undef": "warn", 18 | "no-unreachable": "warn", 19 | "no-unused-vars": "warn", 20 | "constructor-super": "warn", 21 | "valid-typeof": "warn" 22 | } 23 | } -------------------------------------------------------------------------------- /docs/tutorials/downloaditem/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules -------------------------------------------------------------------------------- /docs/tutorials/downloaditem/.vscode/settings.json: -------------------------------------------------------------------------------- 1 | // Place your settings in this file to overwrite default and user settings. 2 | { 3 | "typescript.tsdk": "./node_modules/typescript/lib" // we want to use the TS server from our node_modules folder to control its version 4 | } -------------------------------------------------------------------------------- /docs/tutorials/downloaditem/.vscodeignore: -------------------------------------------------------------------------------- 1 | .vscode/** 2 | .vscode-test/** 3 | test/** 4 | .gitignore 5 | jsconfig.json 6 | electron-dotnet-quickstart.md 7 | .eslintrc.json 8 | -------------------------------------------------------------------------------- /docs/tutorials/downloaditem/images/progressbar.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/tutorials/downloaditem/images/progressbar.gif -------------------------------------------------------------------------------- /docs/tutorials/downloaditem/jsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | // See https://go.microsoft.com/fwlink/?LinkId=759670 3 | // for the documentation about the jsconfig.json format 4 | "compilerOptions": { 5 | "target": "es6", 6 | "module": "commonjs", 7 | "allowSyntheticDefaultImports": true 8 | }, 9 | "exclude": [ 10 | "node_modules", 11 | "bower_components", 12 | "jspm_packages", 13 | "tmp", 14 | "temp" 15 | ] 16 | } -------------------------------------------------------------------------------- /docs/tutorials/downloaditem/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "downloaditem", 3 | "displayName": "DownloadItem", 4 | "description": "Example of using Session DownloadItem", 5 | "version": "0.0.1", 6 | "publisher": "Xamarin", 7 | "main": "main.js", 8 | "scripts": { 9 | "start": "electron ." 10 | }, 11 | "devDependencies": { 12 | "electron": "^1.4.0" 13 | } 14 | } -------------------------------------------------------------------------------- /docs/tutorials/downloaditem/renderer.js: -------------------------------------------------------------------------------- 1 | // This file is required by the index.html file and will 2 | // be executed in the renderer process for that window. 3 | // All of the Node.js APIs are available in this process. 4 | var hello = require("./src/downloaditem.js"); 5 | 6 | hello.sayHello(); 7 | -------------------------------------------------------------------------------- /docs/tutorials/downloaditem/src/Main/MainWindow.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | net451 5 | .\bin\$(Configuration)\ 6 | $(OutputPath) 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /docs/tutorials/downloaditem/src/Main/packages.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /docs/tutorials/downloaditem/src/SessionDownload/SessionDownload.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | net451 5 | .\bin\$(Configuration)\ 6 | $(OutputPath) 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /docs/tutorials/downloaditem/src/SessionDownload/packages.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /docs/tutorials/downloaditem/src/downloaditem.js: -------------------------------------------------------------------------------- 1 | var dotnet = require('electron-dotnet'); 2 | 3 | //var hello = dotnet.func("./src/SessionDownload/bin/Debug/SessionDownload.dll"); 4 | var hello = dotnet.func("./src/SessionDownload/SessionDownload.cs"); 5 | 6 | //Make method externaly visible this will be referenced in the renderer.js file 7 | exports.sayHello = arg => { 8 | hello('SessionDownload', function (error, result) { 9 | if (error) throw error; 10 | if (result) console.log(result); 11 | }); 12 | } -------------------------------------------------------------------------------- /docs/tutorials/geolocation/.eslintrc.json: -------------------------------------------------------------------------------- 1 | { 2 | "env": { 3 | "browser": false, 4 | "commonjs": true, 5 | "es6": true, 6 | "node": true 7 | }, 8 | "parserOptions": { 9 | "ecmaFeatures": { 10 | "jsx": true 11 | }, 12 | "sourceType": "module" 13 | }, 14 | "rules": { 15 | "no-const-assign": "warn", 16 | "no-this-before-super": "warn", 17 | "no-undef": "warn", 18 | "no-unreachable": "warn", 19 | "no-unused-vars": "warn", 20 | "constructor-super": "warn", 21 | "valid-typeof": "warn" 22 | } 23 | } -------------------------------------------------------------------------------- /docs/tutorials/geolocation/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules -------------------------------------------------------------------------------- /docs/tutorials/geolocation/.vscode/settings.json: -------------------------------------------------------------------------------- 1 | // Place your settings in this file to overwrite default and user settings. 2 | { 3 | "typescript.tsdk": "./node_modules/typescript/lib" // we want to use the TS server from our node_modules folder to control its version 4 | } -------------------------------------------------------------------------------- /docs/tutorials/geolocation/.vscodeignore: -------------------------------------------------------------------------------- 1 | .vscode/** 2 | .vscode-test/** 3 | test/** 4 | .gitignore 5 | jsconfig.json 6 | electron-dotnet-quickstart.md 7 | .eslintrc.json 8 | -------------------------------------------------------------------------------- /docs/tutorials/geolocation/images/error.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/tutorials/geolocation/images/error.png -------------------------------------------------------------------------------- /docs/tutorials/geolocation/images/finder-app.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/tutorials/geolocation/images/finder-app.png -------------------------------------------------------------------------------- /docs/tutorials/geolocation/images/geolocation-mac.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/tutorials/geolocation/images/geolocation-mac.png -------------------------------------------------------------------------------- /docs/tutorials/geolocation/images/geolocation-run1.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/tutorials/geolocation/images/geolocation-run1.gif -------------------------------------------------------------------------------- /docs/tutorials/geolocation/images/icons/appicon.icns: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/tutorials/geolocation/images/icons/appicon.icns -------------------------------------------------------------------------------- /docs/tutorials/geolocation/images/icons/appicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/tutorials/geolocation/images/icons/appicon.ico -------------------------------------------------------------------------------- /docs/tutorials/geolocation/images/icons/appicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/tutorials/geolocation/images/icons/appicon.png -------------------------------------------------------------------------------- /docs/tutorials/geolocation/images/map.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/tutorials/geolocation/images/map.png -------------------------------------------------------------------------------- /docs/tutorials/geolocation/images/template-geolocation.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/tutorials/geolocation/images/template-geolocation.gif -------------------------------------------------------------------------------- /docs/tutorials/geolocation/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | GeoLocation 6 | 7 | 8 |

GeoLocation

9 |

10 |

11 |
12 | 13 |
14 | 15 | 16 | 20 | -------------------------------------------------------------------------------- /docs/tutorials/geolocation/jsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | // See https://go.microsoft.com/fwlink/?LinkId=759670 3 | // for the documentation about the jsconfig.json format 4 | "compilerOptions": { 5 | "target": "es6", 6 | "module": "commonjs", 7 | "allowSyntheticDefaultImports": true 8 | }, 9 | "exclude": [ 10 | "node_modules", 11 | "bower_components", 12 | "jspm_packages", 13 | "tmp", 14 | "temp" 15 | ] 16 | } -------------------------------------------------------------------------------- /docs/tutorials/geolocation/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "geolocation", 3 | "displayName": "GeoLocation", 4 | "description": "Example of Scripting the navigator.geolocation functionality", 5 | "version": "0.0.1", 6 | "publisher": "Xamarin", 7 | "main": "main.js", 8 | "scripts": { 9 | "start": "electron ." 10 | }, 11 | "devDependencies": { 12 | "electron": "^1.4.0", 13 | "electron-packager": "^8.7.2" 14 | }, 15 | "GOOGLE_API_KEY": "YOUR_API_KEY_HERE", 16 | "dependencies": { 17 | "electron-is-dev": "^0.3.0" 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /docs/tutorials/geolocation/renderer.js: -------------------------------------------------------------------------------- 1 | // This file is required by the index.html file and will 2 | // be executed in the renderer process for that window. 3 | // All of the Node.js APIs are available in this process. 4 | var hello = require("./src/geolocation.js"); 5 | 6 | hello.sayHello(); 7 | -------------------------------------------------------------------------------- /docs/tutorials/geolocation/src/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/tutorials/geolocation/src/.DS_Store -------------------------------------------------------------------------------- /docs/tutorials/geolocation/src/Location/packages.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /docs/tutorials/geolocation/src/Main/packages.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /docs/tutorials/graceful1/.eslintrc.json: -------------------------------------------------------------------------------- 1 | { 2 | "env": { 3 | "browser": false, 4 | "commonjs": true, 5 | "es6": true, 6 | "node": true 7 | }, 8 | "parserOptions": { 9 | "ecmaFeatures": { 10 | "jsx": true 11 | }, 12 | "sourceType": "module" 13 | }, 14 | "rules": { 15 | "no-const-assign": "warn", 16 | "no-this-before-super": "warn", 17 | "no-undef": "warn", 18 | "no-unreachable": "warn", 19 | "no-unused-vars": "warn", 20 | "constructor-super": "warn", 21 | "valid-typeof": "warn" 22 | } 23 | } -------------------------------------------------------------------------------- /docs/tutorials/graceful1/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules -------------------------------------------------------------------------------- /docs/tutorials/graceful1/.vscode/settings.json: -------------------------------------------------------------------------------- 1 | // Place your settings in this file to overwrite default and user settings. 2 | { 3 | "typescript.tsdk": "./node_modules/typescript/lib" // we want to use the TS server from our node_modules folder to control its version 4 | } -------------------------------------------------------------------------------- /docs/tutorials/graceful1/.vscodeignore: -------------------------------------------------------------------------------- 1 | .vscode/** 2 | .vscode-test/** 3 | test/** 4 | .gitignore 5 | jsconfig.json 6 | electron-dotnet-quickstart.md 7 | .eslintrc.json 8 | -------------------------------------------------------------------------------- /docs/tutorials/graceful1/images/flicker-end.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/tutorials/graceful1/images/flicker-end.gif -------------------------------------------------------------------------------- /docs/tutorials/graceful1/images/flicker.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/tutorials/graceful1/images/flicker.gif -------------------------------------------------------------------------------- /docs/tutorials/graceful1/jsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | // See https://go.microsoft.com/fwlink/?LinkId=759670 3 | // for the documentation about the jsconfig.json format 4 | "compilerOptions": { 5 | "target": "es6", 6 | "module": "commonjs", 7 | "allowSyntheticDefaultImports": true 8 | }, 9 | "exclude": [ 10 | "node_modules", 11 | "bower_components", 12 | "jspm_packages", 13 | "tmp", 14 | "temp" 15 | ] 16 | } -------------------------------------------------------------------------------- /docs/tutorials/graceful1/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "gracefulload", 3 | "displayName": "GracefulLoad", 4 | "description": "Showing Windows Gracefully using BackgroundColor", 5 | "version": "0.0.1", 6 | "publisher": "Xamarin", 7 | "main": "main.js", 8 | "scripts": { 9 | "start": "electron ." 10 | }, 11 | "devDependencies": { 12 | "electron": "^1.4.0" 13 | } 14 | } -------------------------------------------------------------------------------- /docs/tutorials/graceful1/renderer.js: -------------------------------------------------------------------------------- 1 | // This file is required by the index.html file and will 2 | // be executed in the renderer process for that window. 3 | // All of the Node.js APIs are available in this process. 4 | var hello = require("./src/gracefulload.js"); 5 | 6 | hello.sayHello(); 7 | -------------------------------------------------------------------------------- /docs/tutorials/graceful1/src/GracefulLoad/GracefulLoad.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | net451 5 | .\bin\$(Configuration)\ 6 | $(OutputPath) 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /docs/tutorials/graceful1/src/GracefulLoad/packages.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /docs/tutorials/graceful1/src/Main/MainWindow.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | net451 5 | .\bin\$(Configuration)\ 6 | $(OutputPath) 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /docs/tutorials/graceful1/src/Main/packages.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /docs/tutorials/graceful1/src/gracefulload.js: -------------------------------------------------------------------------------- 1 | var dotnet = require('electron-dotnet'); 2 | 3 | //var hello = dotnet.func("./src/GracefulLoad/bin/Debug/GracefulLoad.dll"); 4 | var hello = dotnet.func("./src/GracefulLoad/GracefulLoad.cs"); 5 | 6 | //Make method externaly visible this will be referenced in the renderer.js file 7 | exports.sayHello = arg => { 8 | hello('GracefulLoad', function (error, result) { 9 | if (error) throw error; 10 | if (result) console.log(result); 11 | }); 12 | } -------------------------------------------------------------------------------- /docs/tutorials/graceful2/.eslintrc.json: -------------------------------------------------------------------------------- 1 | { 2 | "env": { 3 | "browser": false, 4 | "commonjs": true, 5 | "es6": true, 6 | "node": true 7 | }, 8 | "parserOptions": { 9 | "ecmaFeatures": { 10 | "jsx": true 11 | }, 12 | "sourceType": "module" 13 | }, 14 | "rules": { 15 | "no-const-assign": "warn", 16 | "no-this-before-super": "warn", 17 | "no-undef": "warn", 18 | "no-unreachable": "warn", 19 | "no-unused-vars": "warn", 20 | "constructor-super": "warn", 21 | "valid-typeof": "warn" 22 | } 23 | } -------------------------------------------------------------------------------- /docs/tutorials/graceful2/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules -------------------------------------------------------------------------------- /docs/tutorials/graceful2/.vscode/settings.json: -------------------------------------------------------------------------------- 1 | // Place your settings in this file to overwrite default and user settings. 2 | { 3 | "typescript.tsdk": "./node_modules/typescript/lib" // we want to use the TS server from our node_modules folder to control its version 4 | } -------------------------------------------------------------------------------- /docs/tutorials/graceful2/.vscodeignore: -------------------------------------------------------------------------------- 1 | .vscode/** 2 | .vscode-test/** 3 | test/** 4 | .gitignore 5 | jsconfig.json 6 | electron-dotnet-quickstart.md 7 | .eslintrc.json 8 | -------------------------------------------------------------------------------- /docs/tutorials/graceful2/images/flicker-bg.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/tutorials/graceful2/images/flicker-bg.gif -------------------------------------------------------------------------------- /docs/tutorials/graceful2/images/flicker-end.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/tutorials/graceful2/images/flicker-end.gif -------------------------------------------------------------------------------- /docs/tutorials/graceful2/images/flicker.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/tutorials/graceful2/images/flicker.gif -------------------------------------------------------------------------------- /docs/tutorials/graceful2/jsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | // See https://go.microsoft.com/fwlink/?LinkId=759670 3 | // for the documentation about the jsconfig.json format 4 | "compilerOptions": { 5 | "target": "es6", 6 | "module": "commonjs", 7 | "allowSyntheticDefaultImports": true 8 | }, 9 | "exclude": [ 10 | "node_modules", 11 | "bower_components", 12 | "jspm_packages", 13 | "tmp", 14 | "temp" 15 | ] 16 | } -------------------------------------------------------------------------------- /docs/tutorials/graceful2/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "gracefulload", 3 | "displayName": "GracefulLoad", 4 | "description": "Showing Windows Gracefully Using `ready-to-show` Event", 5 | "version": "0.0.1", 6 | "publisher": "Xamarin", 7 | "main": "main.js", 8 | "scripts": { 9 | "start": "electron ." 10 | }, 11 | "devDependencies": { 12 | "electron": "^1.4.0" 13 | } 14 | } -------------------------------------------------------------------------------- /docs/tutorials/graceful2/renderer.js: -------------------------------------------------------------------------------- 1 | // This file is required by the index.html file and will 2 | // be executed in the renderer process for that window. 3 | // All of the Node.js APIs are available in this process. 4 | var hello = require("./src/gracefulload.js"); 5 | 6 | hello.sayHello(); 7 | -------------------------------------------------------------------------------- /docs/tutorials/graceful2/src/GracefulLoad/GracefulLoad.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | net451 5 | .\bin\$(Configuration)\ 6 | $(OutputPath) 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /docs/tutorials/graceful2/src/GracefulLoad/packages.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /docs/tutorials/graceful2/src/Main/MainWindow.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | net451 5 | .\bin\$(Configuration)\ 6 | $(OutputPath) 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /docs/tutorials/graceful2/src/Main/packages.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /docs/tutorials/graceful2/src/gracefulload.js: -------------------------------------------------------------------------------- 1 | var dotnet = require('electron-dotnet'); 2 | 3 | //var hello = dotnet.func("./src/GracefulLoad/bin/Debug/GracefulLoad.dll"); 4 | var hello = dotnet.func("./src/GracefulLoad/GracefulLoad.cs"); 5 | 6 | //Make method externaly visible this will be referenced in the renderer.js file 7 | exports.sayHello = arg => { 8 | hello('GracefulLoad', function (error, result) { 9 | if (error) throw error; 10 | if (result) console.log(result); 11 | }); 12 | } -------------------------------------------------------------------------------- /docs/tutorials/printtopdf/.eslintrc.json: -------------------------------------------------------------------------------- 1 | { 2 | "env": { 3 | "browser": false, 4 | "commonjs": true, 5 | "es6": true, 6 | "node": true 7 | }, 8 | "parserOptions": { 9 | "ecmaFeatures": { 10 | "jsx": true 11 | }, 12 | "sourceType": "module" 13 | }, 14 | "rules": { 15 | "no-const-assign": "warn", 16 | "no-this-before-super": "warn", 17 | "no-undef": "warn", 18 | "no-unreachable": "warn", 19 | "no-unused-vars": "warn", 20 | "constructor-super": "warn", 21 | "valid-typeof": "warn" 22 | } 23 | } -------------------------------------------------------------------------------- /docs/tutorials/printtopdf/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules -------------------------------------------------------------------------------- /docs/tutorials/printtopdf/.vscode/settings.json: -------------------------------------------------------------------------------- 1 | // Place your settings in this file to overwrite default and user settings. 2 | { 3 | "typescript.tsdk": "./node_modules/typescript/lib" // we want to use the TS server from our node_modules folder to control its version 4 | } -------------------------------------------------------------------------------- /docs/tutorials/printtopdf/.vscodeignore: -------------------------------------------------------------------------------- 1 | .vscode/** 2 | .vscode-test/** 3 | test/** 4 | .gitignore 5 | jsconfig.json 6 | electron-dotnet-quickstart.md 7 | .eslintrc.json 8 | -------------------------------------------------------------------------------- /docs/tutorials/printtopdf/README.md: -------------------------------------------------------------------------------- 1 | # Printing To PDF 2 | 3 | Demonstrate the Print To Pdf functionality. 4 | 5 | [Create a new `WebSharp Electron Application`](https://github.com/xamarin/WebSharp/blob/master/docs/getting-started/getting-started-websharp-electron-application.md#generate-a-websharp-electron-application) and open it in you favorite source editor. 6 | 7 | ## Summary 8 | -------------------------------------------------------------------------------- /docs/tutorials/printtopdf/jsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | // See https://go.microsoft.com/fwlink/?LinkId=759670 3 | // for the documentation about the jsconfig.json format 4 | "compilerOptions": { 5 | "target": "es6", 6 | "module": "commonjs", 7 | "allowSyntheticDefaultImports": true 8 | }, 9 | "exclude": [ 10 | "node_modules", 11 | "bower_components", 12 | "jspm_packages", 13 | "tmp", 14 | "temp" 15 | ] 16 | } -------------------------------------------------------------------------------- /docs/tutorials/printtopdf/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "printtopdf", 3 | "displayName": "PrintToPdf", 4 | "description": "Demonstrate the Print To Pdf functionality.", 5 | "version": "0.0.1", 6 | "publisher": "Xamarin", 7 | "main": "main.js", 8 | "scripts": { 9 | "start": "electron ." 10 | }, 11 | "devDependencies": { 12 | "electron": "^1.4.0" 13 | } 14 | } -------------------------------------------------------------------------------- /docs/tutorials/printtopdf/renderer.js: -------------------------------------------------------------------------------- 1 | // This file is required by the index.html file and will 2 | // be executed in the renderer process for that window. 3 | // All of the Node.js APIs are available in this process. 4 | var hello = require("./src/printtopdf.js"); 5 | 6 | hello.sayHello(); 7 | -------------------------------------------------------------------------------- /docs/tutorials/printtopdf/src/Main/MainWindow.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | net451 5 | .\bin\$(Configuration)\ 6 | $(OutputPath) 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /docs/tutorials/printtopdf/src/Main/packages.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /docs/tutorials/printtopdf/src/PdfRenderer/PdfRenderer.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | net451 5 | .\bin\$(Configuration)\ 6 | $(OutputPath) 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /docs/tutorials/printtopdf/src/PdfRenderer/packages.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /docs/tutorials/printtopdf/src/printtopdf.js: -------------------------------------------------------------------------------- 1 | var dotnet = require('electron-dotnet'); 2 | 3 | //var hello = dotnet.func("./src/PdfRenderer/bin/Debug/PdfRenderer.dll"); 4 | var hello = dotnet.func("./src/PdfRenderer/PdfRenderer.cs"); 5 | 6 | //Make method externaly visible this will be referenced in the renderer.js file 7 | exports.sayHello = arg => { 8 | hello('PdfRenderer', function (error, result) { 9 | if (error) throw error; 10 | if (result) console.log(result); 11 | }); 12 | } -------------------------------------------------------------------------------- /docs/tutorials/session/permissions/permissionrequest/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules -------------------------------------------------------------------------------- /docs/tutorials/session/permissions/permissionrequest/.vscode/settings.json: -------------------------------------------------------------------------------- 1 | // Place your settings in this file to overwrite default and user settings. 2 | { 3 | "typescript.tsdk": "./node_modules/typescript/lib" // we want to use the TS server from our node_modules folder to control its version 4 | } -------------------------------------------------------------------------------- /docs/tutorials/session/permissions/permissionrequest/.vscodeignore: -------------------------------------------------------------------------------- 1 | .vscode/** 2 | .vscode-test/** 3 | test/** 4 | .gitignore 5 | jsconfig.json 6 | electron-dotnet-quickstart.md 7 | .eslintrc.json 8 | -------------------------------------------------------------------------------- /docs/tutorials/session/permissions/permissionrequest/README.md: -------------------------------------------------------------------------------- 1 | # Intercepting Permission Requests 2 | 3 | Example of intercepting permission requests using Session's SetPermissionRequestHandler 4 | 5 | You can start with a new project or follow along with the accompanying code. 6 | 7 | [Create a new `WebSharp Electron Application`](https://github.com/xamarin/WebSharp/blob/master/docs/getting-started/getting-started-websharp-electron-application.md#generate-a-websharp-electron-application) and open it in you favorite source editor. 8 | 9 | 10 | -------------------------------------------------------------------------------- /docs/tutorials/session/permissions/permissionrequest/jsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | // See https://go.microsoft.com/fwlink/?LinkId=759670 3 | // for the documentation about the jsconfig.json format 4 | "compilerOptions": { 5 | "target": "es6", 6 | "module": "commonjs", 7 | "allowSyntheticDefaultImports": true 8 | }, 9 | "exclude": [ 10 | "node_modules", 11 | "bower_components", 12 | "jspm_packages", 13 | "tmp", 14 | "temp" 15 | ] 16 | } -------------------------------------------------------------------------------- /docs/tutorials/session/permissions/permissionrequest/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "permissionrequesthandler", 3 | "displayName": "PermissionRequestHandler", 4 | "description": "Example of intercepting permission requests using Session's SetPermissionRequestHandler", 5 | "version": "0.0.1", 6 | "publisher": "Xamarin", 7 | "main": "main.js", 8 | "scripts": { 9 | "start": "electron ." 10 | }, 11 | "devDependencies": { 12 | "electron": "^1.4.0" 13 | } 14 | } -------------------------------------------------------------------------------- /docs/tutorials/session/permissions/permissionrequest/renderer.js: -------------------------------------------------------------------------------- 1 | // This file is required by the index.html file and will 2 | // be executed in the renderer process for that window. 3 | // All of the Node.js APIs are available in this process. 4 | var hello = require("./src/permissionrequesthandler.js"); 5 | 6 | hello.sayHello(); 7 | -------------------------------------------------------------------------------- /docs/tutorials/session/permissions/permissionrequest/src/Main/MainWindow.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | net451 5 | .\bin\$(Configuration)\ 6 | $(OutputPath) 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /docs/tutorials/session/permissions/permissionrequest/src/Main/packages.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /docs/tutorials/session/permissions/permissionrequest/src/Request/Request.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | net451 5 | .\bin\$(Configuration)\ 6 | $(OutputPath) 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /docs/tutorials/session/permissions/permissionrequest/src/Request/packages.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /docs/tutorials/session/permissions/permissionrequest/src/permissionrequesthandler.js: -------------------------------------------------------------------------------- 1 | var dotnet = require('electron-dotnet'); 2 | 3 | //var hello = dotnet.func("./src/Request/bin/Debug/Request.dll"); 4 | var hello = dotnet.func("./src/Request/Request.cs"); 5 | 6 | //Make method externaly visible this will be referenced in the renderer.js file 7 | exports.sayHello = arg => { 8 | hello('Request', function (error, result) { 9 | if (error) throw error; 10 | if (result) console.log(result); 11 | }); 12 | } -------------------------------------------------------------------------------- /docs/tutorials/session/permissions/pointer-lock/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules -------------------------------------------------------------------------------- /docs/tutorials/session/permissions/pointer-lock/.vscode/settings.json: -------------------------------------------------------------------------------- 1 | // Place your settings in this file to overwrite default and user settings. 2 | { 3 | "typescript.tsdk": "./node_modules/typescript/lib" // we want to use the TS server from our node_modules folder to control its version 4 | } -------------------------------------------------------------------------------- /docs/tutorials/session/permissions/pointer-lock/.vscodeignore: -------------------------------------------------------------------------------- 1 | .vscode/** 2 | .vscode-test/** 3 | test/** 4 | .gitignore 5 | jsconfig.json 6 | electron-dotnet-quickstart.md 7 | .eslintrc.json 8 | -------------------------------------------------------------------------------- /docs/tutorials/session/permissions/pointer-lock/images/messagebox.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/tutorials/session/permissions/pointer-lock/images/messagebox.png -------------------------------------------------------------------------------- /docs/tutorials/session/permissions/pointer-lock/images/pointer-lock.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/tutorials/session/permissions/pointer-lock/images/pointer-lock.gif -------------------------------------------------------------------------------- /docs/tutorials/session/permissions/pointer-lock/jsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | // See https://go.microsoft.com/fwlink/?LinkId=759670 3 | // for the documentation about the jsconfig.json format 4 | "compilerOptions": { 5 | "target": "es6", 6 | "module": "commonjs", 7 | "allowSyntheticDefaultImports": true 8 | }, 9 | "exclude": [ 10 | "node_modules", 11 | "bower_components", 12 | "jspm_packages", 13 | "tmp", 14 | "temp" 15 | ] 16 | } -------------------------------------------------------------------------------- /docs/tutorials/session/permissions/pointer-lock/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "pointerlock", 3 | "displayName": "PointerLock", 4 | "description": "Example of using pointer-lock", 5 | "version": "0.0.1", 6 | "publisher": "Xamarin", 7 | "main": "main.js", 8 | "scripts": { 9 | "start": "electron ." 10 | }, 11 | "devDependencies": { 12 | "electron": "^1.4.0" 13 | } 14 | } -------------------------------------------------------------------------------- /docs/tutorials/session/permissions/pointer-lock/renderer.js: -------------------------------------------------------------------------------- 1 | // This file is required by the index.html file and will 2 | // be executed in the renderer process for that window. 3 | // All of the Node.js APIs are available in this process. 4 | var hello = require("./src/pointerlock.js"); 5 | 6 | hello.sayHello(); 7 | -------------------------------------------------------------------------------- /docs/tutorials/session/permissions/pointer-lock/src/Main/MainWindow.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | net451 5 | .\bin\$(Configuration)\ 6 | $(OutputPath) 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /docs/tutorials/session/permissions/pointer-lock/src/Main/packages.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /docs/tutorials/session/permissions/pointer-lock/src/Pointer/Pointer.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | net451 5 | .\bin\$(Configuration)\ 6 | $(OutputPath) 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /docs/tutorials/session/permissions/pointer-lock/src/Pointer/packages.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /docs/tutorials/session/permissions/pointer-lock/src/pointerlock.js: -------------------------------------------------------------------------------- 1 | var dotnet = require('electron-dotnet'); 2 | 3 | //var hello = dotnet.func("./src/Pointer/bin/Debug/Pointer.dll"); 4 | var hello = dotnet.func("./src/Pointer/Pointer.cs"); 5 | 6 | //Make method externaly visible this will be referenced in the renderer.js file 7 | exports.sayHello = arg => { 8 | hello('Pointer', function (error, result) { 9 | if (error) throw error; 10 | if (result) console.log(result); 11 | }); 12 | } -------------------------------------------------------------------------------- /docs/tutorials/session/permissions/pointer-lock/style.css: -------------------------------------------------------------------------------- 1 | html, body { 2 | margin: 0; 3 | padding: 0; 4 | } 5 | 6 | html { 7 | font-family: sans-serif; 8 | } 9 | 10 | canvas { 11 | display: block; 12 | margin: 0 auto; 13 | border: 1px solid black; 14 | } 15 | 16 | .information { 17 | width: 640px; 18 | margin: 0 auto 50px; 19 | } 20 | 21 | #tracker { 22 | position: absolute; 23 | top: 0; 24 | right: 10px; 25 | background-color: white; 26 | } 27 | 28 | h1 { 29 | font-size: 200%; 30 | } -------------------------------------------------------------------------------- /docs/tutorials/single/.eslintrc.json: -------------------------------------------------------------------------------- 1 | { 2 | "env": { 3 | "browser": false, 4 | "commonjs": true, 5 | "es6": true, 6 | "node": true 7 | }, 8 | "parserOptions": { 9 | "ecmaFeatures": { 10 | "jsx": true 11 | }, 12 | "sourceType": "module" 13 | }, 14 | "rules": { 15 | "no-const-assign": "warn", 16 | "no-this-before-super": "warn", 17 | "no-undef": "warn", 18 | "no-unreachable": "warn", 19 | "no-unused-vars": "warn", 20 | "constructor-super": "warn", 21 | "valid-typeof": "warn" 22 | } 23 | } -------------------------------------------------------------------------------- /docs/tutorials/single/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules -------------------------------------------------------------------------------- /docs/tutorials/single/.vscode/settings.json: -------------------------------------------------------------------------------- 1 | // Place your settings in this file to overwrite default and user settings. 2 | { 3 | "typescript.tsdk": "./node_modules/typescript/lib" // we want to use the TS server from our node_modules folder to control its version 4 | } -------------------------------------------------------------------------------- /docs/tutorials/single/.vscodeignore: -------------------------------------------------------------------------------- 1 | .vscode/** 2 | .vscode-test/** 3 | test/** 4 | .gitignore 5 | jsconfig.json 6 | electron-dotnet-quickstart.md 7 | .eslintrc.json 8 | -------------------------------------------------------------------------------- /docs/tutorials/single/images/create-project.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/tutorials/single/images/create-project.gif -------------------------------------------------------------------------------- /docs/tutorials/single/images/single-instance.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/tutorials/single/images/single-instance.gif -------------------------------------------------------------------------------- /docs/tutorials/single/jsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | // See https://go.microsoft.com/fwlink/?LinkId=759670 3 | // for the documentation about the jsconfig.json format 4 | "compilerOptions": { 5 | "target": "es6", 6 | "module": "commonjs", 7 | "allowSyntheticDefaultImports": true 8 | }, 9 | "exclude": [ 10 | "node_modules", 11 | "bower_components", 12 | "jspm_packages", 13 | "tmp", 14 | "temp" 15 | ] 16 | } -------------------------------------------------------------------------------- /docs/tutorials/single/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "singleinstance", 3 | "displayName": "SingleInstance", 4 | "description": "Create a WebSharp Electron SingleInstance application", 5 | "version": "0.0.1", 6 | "publisher": "Xamarin", 7 | "main": "main.js", 8 | "scripts": { 9 | "start": "electron ." 10 | }, 11 | "devDependencies": { 12 | "electron": "^1.4.0" 13 | } 14 | } -------------------------------------------------------------------------------- /docs/tutorials/single/renderer.js: -------------------------------------------------------------------------------- 1 | // This file is required by the index.html file and will 2 | // be executed in the renderer process for that window. 3 | // All of the Node.js APIs are available in this process. 4 | var hello = require("./src/singleinstance.js"); 5 | 6 | hello.sayHello(); 7 | -------------------------------------------------------------------------------- /docs/tutorials/single/src/Main/MainWindow.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | net451 5 | .\bin\$(Configuration)\ 6 | $(OutputPath) 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /docs/tutorials/single/src/Main/packages.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /docs/tutorials/single/src/Single/Single.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | net451 5 | .\bin\$(Configuration)\ 6 | $(OutputPath) 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /docs/tutorials/single/src/Single/packages.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /docs/tutorials/single/src/singleinstance.js: -------------------------------------------------------------------------------- 1 | var dotnet = require('electron-dotnet'); 2 | 3 | //var hello = dotnet.func("./src/Single/bin/Debug/Single.dll"); 4 | var hello = dotnet.func("./src/Single/Single.cs"); 5 | 6 | //Make method externaly visible this will be referenced in the renderer.js file 7 | exports.sayHello = arg => { 8 | hello('Single', function (error, result) { 9 | if (error) throw error; 10 | if (result) console.log(result); 11 | }); 12 | } -------------------------------------------------------------------------------- /docs/tutorials/tray/.eslintrc.json: -------------------------------------------------------------------------------- 1 | { 2 | "env": { 3 | "browser": false, 4 | "commonjs": true, 5 | "es6": true, 6 | "node": true 7 | }, 8 | "parserOptions": { 9 | "ecmaFeatures": { 10 | "jsx": true 11 | }, 12 | "sourceType": "module" 13 | }, 14 | "rules": { 15 | "no-const-assign": "warn", 16 | "no-this-before-super": "warn", 17 | "no-undef": "warn", 18 | "no-unreachable": "warn", 19 | "no-unused-vars": "warn", 20 | "constructor-super": "warn", 21 | "valid-typeof": "warn" 22 | } 23 | } -------------------------------------------------------------------------------- /docs/tutorials/tray/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules -------------------------------------------------------------------------------- /docs/tutorials/tray/.vscode/settings.json: -------------------------------------------------------------------------------- 1 | // Place your settings in this file to overwrite default and user settings. 2 | { 3 | "typescript.tsdk": "./node_modules/typescript/lib" // we want to use the TS server from our node_modules folder to control its version 4 | } -------------------------------------------------------------------------------- /docs/tutorials/tray/.vscodeignore: -------------------------------------------------------------------------------- 1 | .vscode/** 2 | .vscode-test/** 3 | test/** 4 | .gitignore 5 | jsconfig.json 6 | electron-dotnet-quickstart.md 7 | .eslintrc.json 8 | -------------------------------------------------------------------------------- /docs/tutorials/tray/assets/icons/appicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/tutorials/tray/assets/icons/appicon.ico -------------------------------------------------------------------------------- /docs/tutorials/tray/assets/icons/appicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/tutorials/tray/assets/icons/appicon.png -------------------------------------------------------------------------------- /docs/tutorials/tray/assets/icons/appicon_16x16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/tutorials/tray/assets/icons/appicon_16x16.png -------------------------------------------------------------------------------- /docs/tutorials/tray/assets/icons/appicon_16x16@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/tutorials/tray/assets/icons/appicon_16x16@2x.png -------------------------------------------------------------------------------- /docs/tutorials/tray/jsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | // See https://go.microsoft.com/fwlink/?LinkId=759670 3 | // for the documentation about the jsconfig.json format 4 | "compilerOptions": { 5 | "target": "es6", 6 | "module": "commonjs", 7 | "allowSyntheticDefaultImports": true 8 | }, 9 | "exclude": [ 10 | "node_modules", 11 | "bower_components", 12 | "jspm_packages", 13 | "tmp", 14 | "temp" 15 | ] 16 | } -------------------------------------------------------------------------------- /docs/tutorials/tray/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "minimizetotray", 3 | "displayName": "MinimizeToTray", 4 | "description": "Minimize/Close to Tray with restore", 5 | "version": "0.0.1", 6 | "publisher": "Xamarin", 7 | "main": "main.js", 8 | "scripts": { 9 | "start": "electron ." 10 | }, 11 | "devDependencies": { 12 | "electron": "^1.4.0" 13 | } 14 | } -------------------------------------------------------------------------------- /docs/tutorials/tray/renderer.js: -------------------------------------------------------------------------------- 1 | // This file is required by the index.html file and will 2 | // be executed in the renderer process for that window. 3 | // All of the Node.js APIs are available in this process. 4 | var hello = require("./src/minimizetotray.js"); 5 | 6 | hello.sayHello(); 7 | -------------------------------------------------------------------------------- /docs/tutorials/tray/src/Main/MainWindow.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | net451 5 | .\bin\$(Configuration)\ 6 | $(OutputPath) 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /docs/tutorials/tray/src/Main/packages.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /docs/tutorials/tray/src/MinimizeToTray/MinimizeToTray.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | net451 5 | .\bin\$(Configuration)\ 6 | $(OutputPath) 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /docs/tutorials/tray/src/MinimizeToTray/packages.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /docs/tutorials/tray/src/minimizetotray.js: -------------------------------------------------------------------------------- 1 | var dotnet = require('electron-dotnet'); 2 | 3 | //var hello = dotnet.func("./src/MinimizeToTray/bin/Debug/MinimizeToTray.dll"); 4 | var hello = dotnet.func("./src/MinimizeToTray/MinimizeToTray.cs"); 5 | 6 | //Make method externaly visible this will be referenced in the renderer.js file 7 | exports.sayHello = arg => { 8 | hello('MinimizeToTray', function (error, result) { 9 | if (error) throw error; 10 | if (result) console.log(result); 11 | }); 12 | } -------------------------------------------------------------------------------- /docs/vsc/screenshots/NuGetSourceAddPackage-VSM.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/vsc/screenshots/NuGetSourceAddPackage-VSM.png -------------------------------------------------------------------------------- /docs/vsc/screenshots/NuGetSourcePreferences-VSM.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/vsc/screenshots/NuGetSourcePreferences-VSM.png -------------------------------------------------------------------------------- /docs/vsc/screenshots/NuGetSources-VSM.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/vsc/screenshots/NuGetSources-VSM.png -------------------------------------------------------------------------------- /docs/vsc/screenshots/PackageSourceDropDown.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/vsc/screenshots/PackageSourceDropDown.png -------------------------------------------------------------------------------- /docs/vsc/screenshots/PackageSourceLocalWebSharp.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/vsc/screenshots/PackageSourceLocalWebSharp.png -------------------------------------------------------------------------------- /docs/vsc/screenshots/PackageSourceLocalWebSharpSelect.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/vsc/screenshots/PackageSourceLocalWebSharpSelect.png -------------------------------------------------------------------------------- /docs/vsc/screenshots/PackageSourceSettings.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/vsc/screenshots/PackageSourceSettings.png -------------------------------------------------------------------------------- /docs/vsc/screenshots/debug-drop-down.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/vsc/screenshots/debug-drop-down.png -------------------------------------------------------------------------------- /docs/vsc/screenshots/debug-windows-main-breakpoint.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/vsc/screenshots/debug-windows-main-breakpoint.png -------------------------------------------------------------------------------- /docs/vsc/screenshots/debug-windows-main.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/vsc/screenshots/debug-windows-main.png -------------------------------------------------------------------------------- /docs/vsc/screenshots/exampe-nuget-config.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/vsc/screenshots/exampe-nuget-config.png -------------------------------------------------------------------------------- /docs/vsc/screenshots/hello-world-console.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/vsc/screenshots/hello-world-console.png -------------------------------------------------------------------------------- /docs/vsc/screenshots/hello-world.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/vsc/screenshots/hello-world.png -------------------------------------------------------------------------------- /docs/vsc/screenshots/main-js-breakpoint.PNG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/vsc/screenshots/main-js-breakpoint.PNG -------------------------------------------------------------------------------- /docs/vsc/screenshots/mono-required.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/vsc/screenshots/mono-required.png -------------------------------------------------------------------------------- /docs/vsc/screenshots/nodejs_debugicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/vsc/screenshots/nodejs_debugicon.png -------------------------------------------------------------------------------- /docs/vsc/screenshots/scriptingelectron-console.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/vsc/screenshots/scriptingelectron-console.png -------------------------------------------------------------------------------- /docs/vsc/screenshots/scriptingelectron-console2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/vsc/screenshots/scriptingelectron-console2.png -------------------------------------------------------------------------------- /docs/vsc/screenshots/scriptingelectron-console3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/vsc/screenshots/scriptingelectron-console3.png -------------------------------------------------------------------------------- /docs/vsc/screenshots/scriptingelectron-menuitem-clicked.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/vsc/screenshots/scriptingelectron-menuitem-clicked.png -------------------------------------------------------------------------------- /docs/vsc/screenshots/scriptingelectron.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/vsc/screenshots/scriptingelectron.png -------------------------------------------------------------------------------- /docs/vsc/screenshots/scriptingjs-browser.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/vsc/screenshots/scriptingjs-browser.png -------------------------------------------------------------------------------- /docs/vsc/screenshots/scriptingjs-console.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/vsc/screenshots/scriptingjs-console.png -------------------------------------------------------------------------------- /docs/vsc/screenshots/scriptingjs-console2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/vsc/screenshots/scriptingjs-console2.png -------------------------------------------------------------------------------- /docs/vsc/screenshots/scriptingjs-console3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/vsc/screenshots/scriptingjs-console3.png -------------------------------------------------------------------------------- /docs/vsc/screenshots/scriptingjs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/vsc/screenshots/scriptingjs.png -------------------------------------------------------------------------------- /docs/vsc/screenshots/yogen-mac-ask-electron.PNG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/vsc/screenshots/yogen-mac-ask-electron.PNG -------------------------------------------------------------------------------- /docs/vsc/screenshots/yogen-mac-ask.PNG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/vsc/screenshots/yogen-mac-ask.PNG -------------------------------------------------------------------------------- /docs/vsc/screenshots/yogen-mac-finish-electron.PNG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/vsc/screenshots/yogen-mac-finish-electron.PNG -------------------------------------------------------------------------------- /docs/vsc/screenshots/yogen-mac-finish.PNG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/vsc/screenshots/yogen-mac-finish.PNG -------------------------------------------------------------------------------- /docs/vsc/screenshots/yogen-mac-install-electron.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/vsc/screenshots/yogen-mac-install-electron.png -------------------------------------------------------------------------------- /docs/vsc/screenshots/yogen-mac-install.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/vsc/screenshots/yogen-mac-install.png -------------------------------------------------------------------------------- /docs/vsc/screenshots/yogen-mac.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/vsc/screenshots/yogen-mac.png -------------------------------------------------------------------------------- /docs/vsc/screenshots/yogen.PNG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/vsc/screenshots/yogen.PNG -------------------------------------------------------------------------------- /docs/vsc/screenshots/yogenask.PNG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/vsc/screenshots/yogenask.PNG -------------------------------------------------------------------------------- /docs/vsc/screenshots/yogenfinish.PNG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/vsc/screenshots/yogenfinish.PNG -------------------------------------------------------------------------------- /docs/vsc/screenshots/yogeninstall.PNG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/WebSharp/9f1ea1243b1ff4248c1c9593c95c755a2330a3e4/docs/vsc/screenshots/yogeninstall.PNG -------------------------------------------------------------------------------- /electron-dotnet/.gitignore: -------------------------------------------------------------------------------- 1 | lib-cov 2 | *.seed 3 | *.log 4 | *.csv 5 | *.dat 6 | *.out 7 | *.pid 8 | *.gz 9 | *.lock.json 10 | 11 | pids 12 | logs 13 | results 14 | 15 | node_modules 16 | npm-debug.log 17 | build 18 | 19 | bin/ 20 | obj/ 21 | *.user 22 | *.suo 23 | packages/* 24 | _ReSharper* 25 | 26 | Edge.Tests.* 27 | node.exe 28 | Sample105.* 29 | 30 | .DS_Store 31 | *.sublime-project 32 | *.sublime-workspace 33 | 34 | .cproject 35 | .project 36 | .metadata/ 37 | .settings/ 38 | 39 | adhoc/ -------------------------------------------------------------------------------- /electron-dotnet/LICENSE.txt: -------------------------------------------------------------------------------- 1 | Copyright 2012 Tomasz Janczuk 2 | 3 | Licensed under the Apache License, Version 2.0 (the "License"); 4 | you may not use this file except in compliance with the License. 5 | You may obtain a copy of the License at 6 | 7 | http://www.apache.org/licenses/LICENSE-2.0 8 | 9 | Unless required by applicable law or agreed to in writing, software 10 | distributed under the License is distributed on an "AS IS" BASIS, 11 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | See the License for the specific language governing permissions and 13 | limitations under the License. -------------------------------------------------------------------------------- /electron-dotnet/src/dotnet/clractioncontext.cpp: -------------------------------------------------------------------------------- 1 | #include "edge.h" 2 | 3 | void ClrActionContext::ActionCallback(void* data) 4 | { 5 | ClrActionContext* context = (ClrActionContext*)data; 6 | System::Action^ action = context->action; 7 | delete context; 8 | action(); 9 | } 10 | -------------------------------------------------------------------------------- /electron-dotnet/src/websharpjs/WebSharp.js/dotnet/WebSharpJs.DOM/MouseButtons.cs: -------------------------------------------------------------------------------- 1 | // 2 | // MouseButtons.cs 3 | // 4 | 5 | 6 | using System; 7 | 8 | using WebSharpJs.Script; 9 | 10 | namespace WebSharpJs.DOM 11 | { 12 | 13 | [Flags] 14 | public enum MouseButtons 15 | { 16 | None = 0, 17 | Left = 1, 18 | Right = 2, 19 | Middle = 4 20 | } 21 | 22 | } -------------------------------------------------------------------------------- /electron-dotnet/src/websharpjs/WebSharp.js/dotnet/WebSharpJs.Script/Callback/ICallbackResult.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Threading.Tasks; 3 | 4 | namespace WebSharpJs.Script 5 | { 6 | public interface ICallbackResult 7 | { 8 | Object CallbackState { get; } 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /electron-dotnet/src/websharpjs/WebSharp.js/dotnet/WebSharpJs.Script/Callback/IScriptObjectCallback.cs: -------------------------------------------------------------------------------- 1 | namespace WebSharpJs.Script 2 | { 3 | public interface IScriptObjectCallback 4 | { } 5 | 6 | } 7 | -------------------------------------------------------------------------------- /electron-dotnet/src/websharpjs/WebSharp.js/dotnet/WebSharpJs.Script/Callback/IScriptObjectCallbackProxy.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Threading.Tasks; 3 | 4 | namespace WebSharpJs.Script 5 | { 6 | internal interface IScriptObjectCallbackProxy 7 | { 8 | Func> CallbackProxy { get; } 9 | MetaData[] TypeMappings { get; } 10 | 11 | } 12 | 13 | } 14 | -------------------------------------------------------------------------------- /electron-dotnet/src/websharpjs/WebSharp.js/dotnet/WebSharpJs.Script/Callback/ScriptObjectCallbackResult.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Threading.Tasks; 3 | 4 | namespace WebSharpJs.Script 5 | { 6 | public class ScriptObjectCallbackResult : ICallbackResult 7 | { 8 | object callbackState; 9 | public Object CallbackState => callbackState; 10 | 11 | public ScriptObjectCallbackResult(Object state) 12 | { 13 | callbackState = state; 14 | } 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /electron-dotnet/src/websharpjs/WebSharp.js/dotnet/WebSharpJs.Script/IScriptObjectProxy.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Threading.Tasks; 3 | 4 | namespace WebSharpJs.Script 5 | { 6 | public interface IScriptObjectProxy 7 | { 8 | 9 | int Handle { get; } 10 | dynamic JavascriptFunctionProxy { get; set; } 11 | Func> JavascriptFunction { get; set; } 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /electron-dotnet/src/websharpjs/WebSharp.js/packages.config: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | -------------------------------------------------------------------------------- /electron-dotnet/tools/buildall.bat: -------------------------------------------------------------------------------- 1 | @echo off 2 | call %~dp0\build.bat release 1.4.0 6.5.0 3 | call %~dp0\build.bat release 1.5.0 7.0.0 7.4.0 4 | call %~dp0\build.bat release 1.6.0 7.4.0 5 | call %~dp0\build.bat release 1.7.0 7.9.0 -------------------------------------------------------------------------------- /electron-dotnet/tools/checkplatform.js: -------------------------------------------------------------------------------- 1 | try { 2 | if (process.versions.electron !== undefined) 3 | require('../lib/electron-dotnet.js'); 4 | } 5 | catch (e) { 6 | console.log('***************************************'); 7 | console.log(e); 8 | console.log('***************************************'); 9 | } 10 | 11 | console.log('Success: platform check for electron-dotnet.js: node.js ' + process.arch + ' v' + process.versions.node ); 12 | -------------------------------------------------------------------------------- /electron-dotnet/tools/download.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Net; 3 | 4 | class Program 5 | { 6 | public static void Main(string[] args) 7 | { 8 | if (args.Length != 2) { 9 | throw new InvalidOperationException("Usage: download.exe "); 10 | } 11 | 12 | Console.WriteLine("Downloading " + args[0] + " to " + args[1] + "..."); 13 | var client = new WebClient(); 14 | client.DownloadFile(args[0], args[1]); 15 | Console.WriteLine("Done."); 16 | } 17 | } -------------------------------------------------------------------------------- /electron-dotnet/tools/repl.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.IO; 3 | 4 | class Program 5 | { 6 | public static void Main(string[] args) 7 | { 8 | if (args.Length != 3) { 9 | throw new InvalidOperationException("Usage: repl.exe "); 10 | } 11 | 12 | Console.WriteLine("Replacing " + args[1] + " with " + args[2] + " in " + args[0] + "..."); 13 | var s = File.ReadAllText(args[0]); 14 | File.WriteAllText(args[0], s.Replace(args[1], args[2])); 15 | Console.WriteLine("Done."); 16 | } 17 | } -------------------------------------------------------------------------------- /electron-dotnet/tools/unzip.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.IO.Compression; 3 | 4 | class Program 5 | { 6 | public static void Main(string[] args) 7 | { 8 | if (args.Length != 2) { 9 | throw new InvalidOperationException("Usage: unzip.exe "); 10 | } 11 | 12 | Console.WriteLine("Unziping " + args[0] + " to " + args[1] + "..."); 13 | ZipFile.ExtractToDirectory(args[0], args[1]); 14 | Console.WriteLine("Done."); 15 | } 16 | } -------------------------------------------------------------------------------- /electron-dotnet/tools/whereis.js: -------------------------------------------------------------------------------- 1 | var fs = require('fs'); 2 | var path = require('path'); 3 | 4 | module.exports = function() { 5 | var pathSep = process.platform === 'win32' ? ';' : ':'; 6 | 7 | var directories = process.env.PATH.split(pathSep); 8 | 9 | for (var i = 0; i < directories.length; i++) { 10 | for (var j = 0; j < arguments.length; j++) { 11 | var filename = arguments[j]; 12 | var filePath = path.join(directories[i], filename); 13 | 14 | if (fs.existsSync(filePath)) { 15 | return filePath; 16 | } 17 | } 18 | } 19 | 20 | return null; 21 | } -------------------------------------------------------------------------------- /setup.ps1: -------------------------------------------------------------------------------- 1 | $storageDir = $pwd 2 | $webclient = New-Object System.Net.WebClient 3 | $url = "http://storage.googleapis.com/nativeclient-mirror/nacl/nacl_sdk/nacl_sdk.zip" 4 | $file = "$storageDir\nacl_sdk.zip" 5 | $webclient.DownloadFile($url,$file) 6 | 7 | Expand-Archive -Path $file -DestinationPath "..\" -Force --------------------------------------------------------------------------------