Commit Graph

41 Commits

Author SHA1 Message Date
Hassan DRAGA
bc5e5b2a56 Public get_new_window_id
# New
* `webui_get_new_window_id` is now public
* Updating C++ examples
2023-05-09 07:48:27 -04:00
Hassan DRAGA
4e0a7fe5c1 Text Editor Example
# Changes
* `webui_run` changed from `bool` to `void` as it run the script fast with no return

# New
* `char* webui_encode(const char* str)` encode string to base64
* `char* webui_decode(const char* str)` decode base64 to string
* `void webui_free(void* ptr)` free resource allocated by WebUI (_when using webui_encode()_)
* A text editor example

# Fix
* Now WebUI wait in loop while the application requestion more html files (_Large HTML UI_)
2023-05-08 23:03:41 -04:00
Hassan DRAGA
aacc8b0ddd Window ID Based Creation
# New:

* New API: `void webui_new_window_id(size_t window_number)`
* New API: `void webui_destroy(size_t window)`

_Please see C serve_a_folder example on how to use webui_new_window_id()_

# Changes

* To keep consistency with window IDs, all `unsigned int` changed to `size_t`
2023-05-07 13:54:15 -04:00
Albert Shown
e116261130 C++ Wrapper Update
* Now the C++ wrapper has its own class instead of direct C calls.
2023-05-05 17:41:20 -04:00
Hassan DRAGA
ca7b4f50ed WebUI v2.3.0
# Users/Wrappers Changes
* The window object changed from `void*` (pointer) to a simple `size_t` (integer)

# New Core Features And Changes
* License changed from `GPLv2` to 'MIT'. Thanks to @xD0135
* The core APIs is completely changed from `Mongoose` to `civetweb`. Thanks to @xD0135
* Kiosk mode support. Thanks to @malisipi
* UI responses resolving using IDs instead of first received (WebUI-JS-Bridge)
* Fix C++ Linux Clang build issue (C++ Linux GCC still broken)
2023-05-04 21:41:03 -04:00
Hassan DRAGA
41b5ab3bd7 Updating the PR
* The original code works. I'm just re-styling it to make the WebUI code look the same.
2023-05-03 20:18:56 -04:00
Hassan DRAGA
591020ffc5
Update webui.h 2023-05-03 19:57:48 -04:00
Hassan DRAGA
29694c40cf
Update webui.h 2023-05-03 19:55:46 -04:00
Mehmet Ali Şipi
537d5a677a Add Kiosk Support For Chrome 2023-05-03 16:59:21 +03:00
Hassan DRAGA
866796c8d2 Event Struct Improvement
* In webui_event_t `type` changed to `event_type`. This is because some wrapper's language does not support using _type_ as a variable name.
* In webui_event_t `char* response` changed to `unsigned int event_number`.
* Now `webui_interface_set_response()` use a simple `unsigned int event_number` instead of `char* response`.
2023-04-29 13:46:11 -04:00
Albert Shown
f4f168c912 Fix TCC (tlhelp32.h) issue
* Removing auto-running browser detection from TCC build
2023-04-26 18:15:55 -04:00
Albert Shown
296dfdc0b4 Go & C++ Documentation
* Adding Go Documentation
* Adding C++ Documentation
* Removing TCC warnings
2023-04-25 17:56:57 -04:00
Albert Shown
3a0cd4968f Memory Optimization
* Implementing https://github.com/alifcommunity/webui/issues/81
* Fix Linux & macOS build script using `dos2unix`
2023-04-24 17:44:27 -04:00
Hassan DRAGA
e1d8f3f43c Linux and macOS Support
* Linux Support
* macOS Support
* Python Wrapper Finished
2023-04-20 22:18:32 -04:00
Hassan DRAGA
04b3ab7734 Python Wrapper (Not Complete)
* First Python Wrapper Commit v2.2.0 (Not Complete)
* Adding `windows_build.bat`
2023-04-19 22:52:56 -04:00
Hassan DRAGA
18d68ab586 First WebUI v2.2.0 Commit
# WebUI v2.2.0

* Now, creating a wrapper is easier as core functions have been removed from `webui.h`
* Removing many functions (webui_open, webui_new_server...)

* C - Complete
* Go - Complete
* Deno - Complete
* All other things still need to be completed...
2023-04-17 15:43:46 -04:00
Albert Shown
0e6ac9b813 Minor C style code changes
* Minor C style code changes, no new features.
2023-04-04 11:28:13 -04:00
Hassan DRAGA
9a38611454 WebUI v2.1.1
* Fix MacOS threading bug `wait()`
* Removing all `bind_all` related codes
* Now, you can listen for general events by binding with an empty ID
2023-04-01 00:05:41 -04:00
Hassan DRAGA
b7bf608240 WebUI v2.1.0
#New Features
* Supporting more web browsers
* Search for web browsers in Windows Reg.
* Using the same show() function for HTML script, files, and refresh content
* Support Chrome on macOS

#Breaking code
* Switching from `webui_show(win, html, browser);` to `webui_show(win, content);`, and it's used for HTML, files, and reload the window
* Removing `webui_show_cpy()`, `webui_refresh()`, `webui_refresh_cpy()`
2023-03-28 23:00:09 -04:00
Charles Lowell
599d452a70
Add a build for MacOS
This copies the Linux build to generate binaries for MacOS
2023-03-28 15:50:10 -05:00
Albert Shown
1a1e4c7a00 WebUI v2.0.7
* Switch from GPL to LGPL
* Deno example is ready
* Adding `void _webui_free_all_mem()` to release all dynamic mem at exit
* Break Change `void webui_script_interface(webui_window_t* win, const char* script, unsigned int timeout, bool* error, unsigned int* length, char* data)` to `void webui_script_interface(webui_window_t* win, const char* script, unsigned int timeout, bool* error, unsigned int* length, char** data)`
* Updating readme
* Moving Zig build file into build folder

More code cleaning and more examples is needed before we release the version 2.0.7.
2023-03-21 18:47:19 -04:00
Albert Shown
9c14eef124 New Feature - Supporting local files & embedded HTML
* Supporting external local files when using embedded HTML code
2023-03-03 15:49:34 -05:00
Albert Shown
6991c02abc WebUI 2.0.6
* Supporting href link
* Python serve a folder example
* Fix bug in Infinite loop when set_timeout() get called later
* webui.js wont close window if href link clicked
* Fix bug in webui.js show error message when switching between window fast
2023-03-01 18:16:24 -05:00
Albert Shown
a286d756f4 Call C with args from JS
* Updating the interface APIs to call background with args from UI
* Auto log enabled in debug build
2022-12-12 10:13:27 -05:00
Albert Shown
b09ab69200 Call C from JS with response
* Adding the possibility of calling C from JS and wait for the response
2022-11-28 11:04:45 -05:00
Albert Shown
c5758b1ddd v2.0.5
* Adding webui_fn()
* Cleaning JS Bridge
* Rename internal element ID to easy reading the code
* Adding Data to the E event struct
2022-11-21 18:07:46 -05:00
Albert Shown
a96de5e810 Process based call
* Try to close browser if main closes
* Serve a Folder call
2022-11-11 17:19:37 -05:00
Hassan DRAGA
86838172a0 v2.0.4
* Minor bug fix
* Python Docs
* Update Python Wrapper
* Fix C VS Studio broken project
2022-11-07 23:33:03 -05:00
Hassan DRAGA
1cebf03d60 C Documentation and APIs Improvement
* Adding C Documentation
* Improve the API call
2022-11-02 21:43:48 -04:00
Hassan DRAGA
d7c62fc8d7 v2.0.3 fix
* Fix bank screen in python module (webui.show())
* Fix getaddrinfo() crash sometimes
* Fix wait() typo
* Fist Rust complete wrapper
2022-11-01 00:26:09 -04:00
Hassan DRAGA
8c77d0b056 v2.0.3 - TypeScript Dynamic Lib
- TypeScript Dynamic Lib
- Incomplete Rus wrapper
- Rename of many API's
- Clean all batch script
2022-10-29 21:41:20 -04:00
Hassan DRAGA
5fc7fb2455 v2.0.2 With full Linux support 2022-10-24 22:35:05 -04:00
Hassan DRAGA
2856dffbdf Incomplete Linux & Website codes 2022-10-23 20:06:15 -04:00
Hassan DRAGA
c71065e8de Multiple Fix
Fix the WS speed
Fix timeout long
Add VS2019/2022
2022-10-20 22:21:52 -04:00
Hassan DRAGA
92d4cbe15c New interface 2022-10-19 19:48:47 -04:00
Hassan DRAGA
937ab1cda5 WebUI 2.0.1 2022-10-19 00:38:54 -04:00
Hassan DRAGA
1c1da406bb Golang first example 2022-09-29 21:03:57 -04:00
Hassan DRAGA
62624a9971 JS and TS examples 2022-09-29 04:32:28 -04:00
Hassan DRAGA
53efaaea51 Using build folder 2022-09-28 19:41:24 -04:00
Hassan DRAGA
f2ba7538f1 Update Python Bridge 2022-09-25 20:05:49 -04:00
Hassan DRAGA
a89dfd8a2d WebUI 2.0 2022-09-24 19:35:56 -04:00