Commit graph

93 commits

Author SHA1 Message Date
Amr Bashir dded1938d9
feat: add IsMenuItem helper methods to get concrete types 2023-07-18 04:00:25 +03:00
Amr Bashir 0000e56974
refactor: move Rc<RefCell<MenuChild>> out of platform_impl (#71)
* refactor: move `Rc<RefCell<MenuChild>>` out of platform_impl

* fix doc test
2023-07-18 03:44:52 +03:00
renovate[bot] fafab8544c
fix(deps): update rust crate cocoa to 0.25 (#70)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-06-20 17:39:24 +03:00
github-actions[bot] b8005fe84e
Apply Version Updates From Current Changes (#68)
Co-authored-by: amrbashir <amrbashir@users.noreply.github.com>
2023-06-19 22:40:46 +03:00
Amr Bashir 2e01d8a04c
ci: remove windows-common-controls test 2023-06-19 22:34:29 +03:00
Max Stoumen fabbbacb4b
support AboutMetadata on macos (#66)
* support `AboutMetadata` on macos

* cleaner syntax

* incorrect docstring

* support linux

* move "Copyright" to constant

* append short_version to version in win, gtk

* narrower unsafe scope

* more accurate docs

* consistent periods in docs

* use `logo` instead for gtk

* clippy autofix

* fmt and clippy

* Create macos-about-metadata.md
2023-06-19 22:34:07 +03:00
Amr Bashir 93c32f733f
ci: use signle quotes 2023-06-19 22:00:27 +03:00
Amr Bashir ac14222934
feat: add common-controls-v6 (#69) 2023-06-19 21:58:45 +03:00
Amr Bashir 7af4477896
feat: add libxdo feature flag (#67)
* feat: add `libxdo` feature flag

* Update .changes/linux-libxdo-feature-flag.md
2023-06-19 20:59:10 +03:00
github-actions[bot] 6e59ec71f6
Apply Version Updates From Current Changes (#65)
Co-authored-by: amrbashir <amrbashir@users.noreply.github.com>
2023-05-04 14:42:53 +03:00
Amr Bashir 47ba0b47ed
feat: add set_accelerator (#64)
* feat: add `set_accelerator`

closes #63

* unsafe
2023-05-04 14:40:58 +03:00
renovate[bot] dfd7b9e437
fix(deps): update rust crate windows-sys to 0.48 (#62)
* fix(deps): update rust crate windows-sys to 0.48

* fix compilation

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: amrbashir <amr.bashir2015@gmail.com>
2023-04-17 13:25:40 +02:00
github-actions[bot] c85f499cd7
Apply Version Updates From Current Changes (#61)
Co-authored-by: amrbashir <amrbashir@users.noreply.github.com>
2023-03-27 21:12:52 +02:00
Amr Bashir f3883ee2d4
fix(windows): run the about dialog in its own thread, closes #57 (#60) 2023-03-27 21:08:43 +02:00
Amr Bashir 059fceb130
fix(windows): downcast check menu item correctly (#58) 2023-03-27 20:47:21 +02:00
github-actions[bot] 440b3ebf81
Apply Version Updates From Current Changes (#56)
Co-authored-by: amrbashir <amrbashir@users.noreply.github.com>
2023-03-06 15:37:57 +02:00
Amr Bashir f322ad454d
fix(Windows): send WM_CLOSE instead of DestroyWindow (#55) 2023-03-06 15:21:50 +02:00
Amr Bashir 88d352033b
fix(Windows): dispatch menu event for icon menu item (#53)
* fix(Windows): dispatch menu event for icon menu item

* default dispatch to true and improve about dialog
2023-03-06 15:21:36 +02:00
github-actions[bot] ded3dfaf95
Apply Version Updates From Current Changes (#52)
Co-authored-by: amrbashir <amrbashir@users.noreply.github.com>
2023-02-28 18:22:59 +02:00
Amr Bashir d2bd85bf7e
docs: add docs for PredefinedMenuItem (#51) 2023-02-28 18:16:20 +02:00
github-actions[bot] 74801f238a
Apply Version Updates From Current Changes (#49)
Co-authored-by: amrbashir <amrbashir@users.noreply.github.com>
2023-02-14 14:51:39 +02:00
Amr Bashir 923af09abf
fix(linux): fix multiple borrow panic (#48)
* fix(linux): fix multiple borrow panic, fixes #40

* chore: update example

* update docs
2023-02-14 14:45:35 +02:00
github-actions[bot] 8a949c2216
Apply Version Updates From Current Changes (#45)
Co-authored-by: amrbashir <amrbashir@users.noreply.github.com>
2023-02-08 21:24:43 +02:00
amrbashir 4b2ebc247c
docs: update docs 2023-02-08 21:00:29 +02:00
renovate[bot] d7905d5f22
chore(deps): update rust crate winit to 0.28 (#42)
* chore(deps): update rust crate winit to 0.28

* fix ci

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Amr Bashir <amr.bashir2015@gmail.com>
2023-02-02 15:42:36 +02:00
github-actions[bot] e6f4357b6d
Apply Version Updates From Current Changes (#39)
Co-authored-by: amrbashir <amrbashir@users.noreply.github.com>
2023-01-26 15:23:51 +02:00
Amr Bashir fb3d0aa303
chore(deps): bump gtk version 0.15 -> 0.16 (#38)
* chore(deps): bump gtk version 0.15 -> 0.16

* fix feature flags
2023-01-26 15:16:53 +02:00
renovate[bot] 4f2ec9ec09
fix(deps): update rust crate windows-sys to 0.45 (#37)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-01-21 02:23:06 +02:00
github-actions[bot] ccffd38c5e
Apply Version Updates From Current Changes (#36)
Co-authored-by: amrbashir <amrbashir@users.noreply.github.com>
2023-01-03 04:09:41 +02:00
Amr Bashir f871c68e81
refactor: allow changing the menu event sender (#35)
* refactor: allow changing the menu event sender

* readme

* fix docs warning

* readme
2023-01-03 04:07:07 +02:00
github-actions[bot] 1e87714759
Apply Version Updates From Current Changes (#33)
Co-authored-by: amrbashir <amrbashir@users.noreply.github.com>
2022-12-30 14:27:56 +02:00
Amr Bashir 7fc1b02cac
feat: add IconMenuItem, closes #30 (#32)
* feat: add `IconMenuItem`

* Linux

* macOS
2022-12-30 14:23:40 +02:00
github-actions[bot] 1c4587efe5
Apply Version Updates From Current Changes (#29)
Co-authored-by: amrbashir <amrbashir@users.noreply.github.com>
2022-12-20 00:59:39 +02:00
Amr Bashir 0173987ed5
fix: parse one letter string to valid accelerator (#28)
* fix: parse one letter string to valid accelerator

* clippy
2022-12-20 00:55:57 +02:00
renovate[bot] 0b0ec147bc
fix(deps): update rust crate thiserror to 1.0.38 (#31)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-12-18 02:58:39 +02:00
amrbashir 82220ab7e8
chore: clippy 2022-12-13 00:21:11 +02:00
amrbashir e80c113d8c
feat: derive Copy for Accelerator 2022-12-12 23:35:41 +02:00
amrbashir e587421c64
chore: add license 2022-12-08 20:50:24 +02:00
github-actions[bot] b00c9e283b
Apply Version Updates From Current Changes (#27)
Co-authored-by: amrbashir <amrbashir@users.noreply.github.com>
2022-12-06 03:05:44 +02:00
amrbashir cf8d88613f
ci: install ubuntu deps in covector 2022-12-06 03:02:55 +02:00
amrbashir 0309d101b1
chore: prepare for first release 2022-12-05 13:39:05 +02:00
Amr Bashir 7de46e4b5a
refactor: rewrite gtk backend from scratch (#24) 2022-12-05 13:32:34 +02:00
amrbashir 93fcdfbb04
chore: remove trailing comma 2022-11-27 12:49:54 +02:00
amrbashir c09eab7ef2
Merge branch 'feat/macOS-ns-menu' into dev 2022-11-27 12:28:36 +02:00
amrbashir 35912d699d
add dedicated ns_menu for context menus and such 2022-11-26 15:13:30 +02:00
amrbashir 37153b826f
feat: expose macOS NSMenu 2022-11-24 18:07:11 +02:00
Amr Bashir 385ea393b5
chore: disable renovate dash board 2022-11-24 03:30:50 +02:00
Amr Bashir b3d06ff9d8
chore: update typo in README.md 2022-11-23 18:41:26 +02:00
renovate[bot] 13e76dcf31
Configure Renovate (#20)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-11-23 18:40:02 +02:00
Amr Bashir 812ff0d37a
refactor: rewrite (#18)
* refactor: rewrite

* fix syncing check items and cleanup

* clippy

* Add `append`, `prepend` and `insert`

* accept different menu items in `*_list` methods

* add context menu for gtk

* add `with_items`

* add `items` getter

* chore: unreachable! and typos

* implement remove

* `*_list`  -> `*_items`

* fix winit example

* add `show_context_menu_for_gtk_window` on `Submenu` type

* Add windows implementation

* TextMenuItem -> MenuItem, MenuItem trait -> MenuEntry

* Add `PredfinedMenuItem`

* move internal mod into its own file

* update tao example to latest tao's `muda` branch

* fix build on linux with latest tao changes

* Fix accelerators on Linux

* update examples

* remove recursive removal of submenus

* remvoe gtk menu items recursively

* fix tao example on macos

* On Windows, remove parents hmenu when removing an item

* Add documentation

* update README.md

* use insert_items with postion 0 for prepend_items

* Add menu mnemonics in examples

* Add `ContextMenu` trait

* Add methods to `ContextMenu` trait necessary for tray icon

* fix linux build

* fix context menu on gtk

* Expose gtk::Menu in ContextMenu trait

* Revert context menu to create a gtk::Menu on each call

* clippy lints

* cleanup crate structure

* update docs

* Fix doc tests and links

* more docs fixes

* error handling

* macOS implementation (#19)

* partial macOS implementation

* fix context menu examples

* add accelerator support for macOS

* strip ampersands from titles on macOS

* add CMD_OR_CTRL shorthand for modifiers

* implement actions for predefined menu items on macos

* fix examples

* more predefined items

* implement insert for macos

* refactor macOS implementation

* menu state getters and setters on macOS

* implement remove for macOS

* code tweaks

* add show_context_menu_for_nsview for Submenu on macOS

* docs improvements

* allow adding item to the same menu multiple times on macOS

* implement `items` for macOS

* strip only single ampersands from menu titles

* add support for menu item actions on macOS

* add app name to macOS About, Hide, Quit menu items

* add methods to set app window and help menus on macOS

* fix clickable submenu titles on macOS

* refactor submenu for safe reuse on macOS

* fmt & clippy

* few cleanups

* fix docs

* clippy

* fix docs

* cleanup examples

* fix tests

* fix clippy??

* use cargo action instead

* ???

* Replace popUpContextMenu with popUpMenuPositioningItem

Co-authored-by: Caesar Schinas <caesar@caesarschinas.com>
Co-authored-by: Wu Wayne <yuweiwu@pm.me>
2022-11-23 18:29:52 +02:00