Commit Graph

344 Commits

Author SHA1 Message Date
nathan
1d9921c22d Fixed issue on windows with unchecked icons 2017-01-25 22:29:55 +01:00
nathan
430309a3f9 WIP windows menu scaling 2017-01-25 22:17:43 +01:00
nathan
cd51b756dd Added ability for swing menu's to change size in scale with the display. 2017-01-25 21:49:55 +01:00
nathan
bc5871d920 Change peer/native class name to make more sense when it's swing 2017-01-25 21:48:15 +01:00
nathan
03e56adc02 Fixed menu image icon scaling for windows. (it is now disabled) 2017-01-25 21:12:00 +01:00
nathan
c524585dec API Changed SystemTray.get() -> SystemTray.getSwing() to be
consistent with getNative() and to indicate that neither are preferred.
2017-01-21 15:49:58 +01:00
nathan
687035c3f1 Proper fix for checkbox state activating callbacks in GTK. 2017-01-21 14:58:49 +01:00
nathan
ea83c7e006 Added option to debug EDT 2017-01-21 14:58:00 +01:00
nathan
8d1e4bddaf fix for GTK triggering events when setting the checkbox state. Added
checks to only dispatch events if the checkbox state is actually
changed.
2017-01-19 01:23:36 +01:00
nathan
76b006023c Updated comments 2017-01-19 01:19:20 +01:00
nathan
e61723dd5b Updated SystemTray and Extension for Debian 8.5/8.6 + Gnome3. It does
not work (on a default install)
2016-12-30 00:04:16 +01:00
nathan
b9ab6a79c2 fixed comments 2016-12-29 23:01:37 +01:00
nathan
f426e2d08d Fixed errors with GObject access on FreeBSD + Gnome3. Added text to
warning logs.
2016-12-29 22:55:33 +01:00
nathan
9727662aca Added comments to Gtk 2016-12-29 22:44:28 +01:00
nathan
3919e1ce9e Fixed issues with isGnome() detection on Unix (FreeBSD) 2016-12-29 13:05:32 +01:00
nathan
e57724229e change package name to lowercase 2016-12-28 23:54:23 +01:00
nathan
c7e90049e6 Fixed isLoaded issues for Gtk and AppIndicator 2016-12-28 23:54:06 +01:00
nathan
c12eacf3fc Fixed package name (is now lowercase) 2016-12-28 23:48:06 +01:00
nathan
3ee25b3935 Updated logic for loading Gtk/AppIndicator based on OS info 2016-12-28 22:14:01 +01:00
nathan
88707b5786 Renamed OsUtil -> OSUtil 2016-12-28 21:43:36 +01:00
nathan
8dfd2d3317 Added isGtk3, changed static fields to be final. 2016-12-28 21:41:49 +01:00
nathan
e3fbec2c55 Changed exception catching in ImageUtils to a larger scope
(IOException -> Exception). Fixed issue with converting a Image to
InputStream for size check operation.
2016-12-28 00:59:46 +01:00
nathan
c01f12fcaf Added UbuntuGnome. Fixed warning output for elementaryOS. 2016-12-27 01:29:42 +01:00
nathan
86ceefc5d3 Fixed issue with AppIndicators setting the indicator name in the
wrong location
2016-12-27 01:29:01 +01:00
nathan
e17ff9082e code polish 2016-12-26 23:32:11 +01:00
nathan
4e009340fa Refactored OS utils into their own class (b/c of dependency issues) 2016-12-26 23:18:39 +01:00
nathan
297d68e06e Now sets the systemtray also to null it fails to load. 2016-12-26 11:34:57 +01:00
nathan
2e55b34ec8 Fix for UbuntuGnome (which has AppIndicators + gnome-shell). Code polish 2016-12-26 01:17:46 +01:00
nathan
48cde07ff5 Code polish, added scaling factor for menus icons 2016-12-26 00:45:59 +01:00
nathan
7bb6129d34 Code polish 2016-12-26 00:30:01 +01:00
nathan
849304467c code polish 2016-12-26 00:18:42 +01:00
nathan
c0b3e9260c Updated comments, added BASIC support for Arch. 2016-12-25 23:53:19 +01:00
nathan
fdabacdf4b Moved windows version info check to OS.java 2016-12-25 21:41:23 +01:00
nathan
2c16b2ca0b Added method to check if topIcons is installed 2016-12-25 21:40:46 +01:00
nathan
8ed9efa289 Added fallback appindicator check for GTK2 2016-12-25 20:20:23 +01:00
nathan
f437c1ddf9 Tweaked extension description 2016-12-25 20:19:19 +01:00
nathan
389c2a0ed4 Fixed issue for possible empty extensions 2016-12-25 16:56:03 +01:00
nathan
ec124384e7 Move other OS info detection methods to OS.java. Fixed Fedora 25 KDE 2016-12-25 00:45:00 +01:00
nathan
c48759725e Fixed system tray for fedora 24 2016-12-24 01:03:06 +01:00
nathan
91c401e389 Fixed system tray icon scaling issue 2016-12-24 01:02:23 +01:00
nathan
5c37796779 Fixed issues with detecting/installing on fedora 23 2016-12-23 23:50:51 +01:00
nathan
b1a41e06ba Fixed various extension install errors for gnome. 2016-12-23 23:50:05 +01:00
nathan
10ba55b9e7 Code cleanup 2016-12-23 22:32:31 +01:00
nathan
ce12c0c208 Fixed comment typos 2016-12-23 21:45:24 +01:00
nathan
773b83eb8c Fixed issues on MacOSX for right-click tray icon event 2016-12-23 16:51:51 +01:00
nathan
53647c8d4d Added more comments for eOS. 2016-12-23 12:32:54 +01:00
nathan
726a1034b0 Fixed issues with checkboxes not working for AWT/GTK 2016-12-23 12:18:14 +01:00
nathan
4fe1ebf14f Added comments for TrayType. Added "AUTO_FIX_INCONSISTENCIES" to
automatically try to resolve issues with various OS configurations.
Cleaned up exceptions (now just error log and NULL menu value)
2016-12-23 11:42:46 +01:00
nathan
1308b5f602 Fixed timeout. 2016-12-23 10:11:22 +01:00
nathan
a3118a07f4 Fixed issues with calling gtk_widget_destroy too much. Fixed
threading issue with isDispatch.
2016-12-23 02:18:01 +01:00
nathan
7c6f3ca77b updated comments 2016-12-19 11:59:08 +01:00
nathan
022e3e1036 Updated dispatchAndWait, updated exceptions, update gtkUpdateThread 2016-12-18 23:21:06 +01:00
nathan
6cce5cd1cb Added comments for gtk2/3. Code polish, fixed potential issues with
race conditions and finally blocks.
2016-12-17 13:13:21 +01:00
nathan
b3b4300179 Changed synchronized -> volatile, changed how synchronized works for
menuEntries Changed setState -> setChecked for checkbox entry
2016-12-16 22:45:27 +01:00
nathan
d104c7e510 Added extra error info when the dispatch queue is buggered up 2016-12-16 22:40:12 +01:00
nathan
a23cb3bf22 Added pantheon (ElementaryOS) detection 2016-12-16 21:57:01 +01:00
nathan
d4ba8d9fae Comment/error formatting 2016-12-13 16:21:41 +01:00
nathan
424135f926 Added extra checks if running as root + using AppIndicators. There
are dbus restrictions that will prevent the indicator from showing in
 this combination
2016-12-12 01:14:43 +01:00
nathan
6a6fb3b140 Changed incorrect error -> debug log 2016-12-12 01:10:02 +01:00
nathan
623906b154 Adjusted to use the new utils ShellProcess (no longer ends with newline) 2016-12-12 01:09:12 +01:00
nathan
cb2702922a Fixed typo with loading libappindicator1, added comments 2016-12-12 01:08:34 +01:00
nathan
82b148e32b Updated comments 2016-12-11 23:42:14 +01:00
nathan
c57533dde8 Added extra checks in case XDG_CURRENT_DESKTOP is not available as a
system environment
2016-12-11 23:37:45 +01:00
nathan
51615c9961 Fixed issues with SWT+Swing on MacOSX (by forcing native menus in
that combo. They cannot work together by design)
2016-12-11 00:49:03 +01:00
nathan
80c451b807 Tweaked var name 2016-12-11 00:46:24 +01:00
nathan
9c2e9229ab Fixed issue with SWT onShutdown hook 2016-12-11 00:04:01 +01:00
nathan
9591362580 SWT behaves better on linux now. Added Swt.isEventThread method 2016-12-10 23:38:45 +01:00
nathan
39ddd235f6 Fixed logging if we cannot init javaFX 2016-12-10 23:38:08 +01:00
nathan
54fb3a0d1d Fixed issues around java7/8 with macOSX and JavaFX 2016-12-10 22:14:15 +01:00
nathan
26e985e032 Added warnings if incompatible javaFX + MacOSX versions detection
(with options)
2016-12-10 21:55:53 +01:00
nathan
760913491f Fixed issue with macOSX right click bug 2016-12-10 21:55:18 +01:00
nathan
d9c54ccd86 Removed extra ; 2016-12-10 19:56:59 +01:00
nathan
9c52309c06 Fixed typo in mac class 2016-12-10 01:33:16 +01:00
nathan
06b3da9831 Fixed issues with EDT & mac with image utils 2016-12-10 00:56:53 +01:00
nathan
28ce208594 Updated comments 2016-10-31 12:17:55 +01:00
nathan
fef02fba79 Code cleanup/polish. Can now add JMenu, JCheckboxMenuItem,
JSeparator, and JMenuItem as components that will get converted and
added to our menu.
2016-10-31 11:32:49 +01:00
nathan
568fb95ee6 Cleaned up caching - now is based on file hash, instead of cache
names, which could lead to heisenbugs. Everything always caches now
based on hash of input
2016-10-24 02:39:40 +02:00
nathan
3fe57cd10d Set tray back to auto-detect 2016-10-24 01:52:49 +02:00
nathan
3c5f05146d Added comments 2016-10-24 01:50:16 +02:00
nathan
599dabf4ef Code polish, documentation, cleanup for API changes 2016-10-24 01:43:32 +02:00
nathan
daff5a8e48 Fininshed round 2 of API changes (native/swing UI finished) 2016-10-23 23:27:13 +02:00
nathan
d665f29f28 new API front-end + bound backend for SwingUI 2016-10-21 12:36:55 +02:00
nathan
86d031ed7c Added better detection for click-jack detection on MacOS. 2016-10-17 12:07:56 +02:00
nathan
a07c5e8ab8 Changed action callback to ActionListener. Added checkbox. 2016-10-17 11:47:25 +02:00
nathan
4e47c5d263 Cleaned up comments 2016-10-16 21:26:39 +02:00
nathan
5bed7ea659 Cleaned up comments 2016-10-16 21:22:56 +02:00
nathan
2f63829139 Moved system-properties debug output. Fixed "fixMacClick" logic 2016-10-16 21:21:24 +02:00
nathan
6d256c8346 Mac SystemTray now correctly overwrites the button click when it was
a re-dispatched click (to support using both left+right mouse clicks)
2016-10-16 21:19:17 +02:00
nathan
c01b560c06 code cleanup, Fixed MacOS SystemTray popup trigger (it now will show
on left and right click, but THERE IS NO DISTINCTION between which
button caused it to show, it will always say it was left mouse)
2016-10-16 21:07:30 +02:00
nathan
a26522411e Code cleanup, GTK.dispatchAndWait refactor, fixed issue with hiding
the tray icon in MacOSx.
2016-10-16 15:58:02 +02:00
nathan
e52591a388 Code polish, cleaned up comments, can recreate after shutdown 2016-10-15 14:16:56 +02:00
nathan
4ad6aa2632 GnomeShell extension provider for the systemTray (code not removed
because functionality will be part of UI options for app).
2016-10-15 14:15:41 +02:00
nathan
bdd3bbf671 Fixed GTK display issues and race conditions in certain Linux
configurations
2016-10-15 14:14:11 +02:00
nathan
0f7ffe1866 Removed no-longer needed debug 2016-10-15 14:13:21 +02:00
nathan
17fad2acfd gnome shell extension will only try to copy over if it doesn't
already exist
2016-10-12 20:42:53 +02:00
nathan
2f96eb21d9 Added exception for when the gnome shell extension.js file is not found 2016-10-12 20:38:08 +02:00
nathan
313ad5a127 More info to DEBUG + docs 2016-10-12 20:33:25 +02:00
nathan
109def7db2 WIP: Getting windows DPI checks in order. 2016-10-12 19:14:44 +02:00
nathan
01f3e0e90a Fixed logic for AWT tray implelmentions 2016-10-12 18:18:21 +02:00
nathan
c6ade0a371 Added comments 2016-10-12 18:13:33 +02:00
nathan
59669bc867 Fixed issues when running JavaFX or SWT on the swing EDT. 2016-10-12 18:09:17 +02:00
nathan
bc4d22c586 useNativeMenus is now a parameter for init 2016-10-12 15:27:13 +02:00
nathan
ecf349f189 SystemTray.get() is now swing UI 2016-10-12 15:23:00 +02:00
nathan
7a2909abca WIP: native + swing menus 2016-10-11 15:23:58 +02:00
nathan
7e3fba9157 Removed dead code 2016-10-10 23:48:13 +02:00
nathan
d08904d634 Code cleanup 2016-10-10 22:42:36 +02:00
nathan
09143f7630 API cleanup, WIP adding widgets to the menu (on pause because of
problems with the enter key not responding after this). Updated test
examples.
2016-10-10 22:40:39 +02:00
nathan
84a7fb77af Added more comments 2016-10-10 22:08:54 +02:00
nathan
96a89a3f44 Code polish. Fixed focus change issues when adding widgets 2016-10-10 17:10:59 +02:00
nathan
89405a6cd1 Cleaned heirarchy, fixed shutdown methods 2016-10-10 11:07:01 +02:00
nathan
85f47eee6a Removed unnecessary code 2016-10-10 01:16:12 +02:00
nathan
919120701d Added SystemTray.setEnabled(). Updated test examples. 2016-10-10 01:15:32 +02:00
nathan
53a9110605 Clean API 2016-10-10 00:30:40 +02:00
nathan
68a9e4edd7 Comments 2016-10-09 23:11:55 +02:00
nathan
2e9201f692 Code polish/refactor. Removed GTK menu stuff 2016-10-09 22:42:44 +02:00
nathan
fbf528d0ca WIP AppIndicators using swing menu 2016-10-09 20:20:23 +02:00
nathan
b936a4cd76 Migrated GtkStatusIcon to use swing menus instead of GTK menus. The
swing menus are the "golden standard", becuase we can controll 100%
of it.
2016-10-09 16:28:32 +02:00
nathan
0e56ca199a Organized swing menu logic 2016-10-09 15:56:58 +02:00
nathan
b976338b46 Removed unneeded API 2016-10-09 15:42:01 +02:00
nathan
e7b98d9f1c Fixed obliterate for sub-menus 2016-10-09 15:41:42 +02:00
nathan
11c3dd6296 Import order 2016-10-09 15:33:03 +02:00
nathan
1a35cb8726 API CHANGE (setIcon -> setImage) for API consistency with how
menus/entries get their image set. Class heirarchy is now consistent
with all menu types (system tray + sub-menus)
2016-10-08 23:54:45 +02:00
nathan
87222f8483 AppIndicator does not support BOLD text in menus, since we cater to
the lowest common denominator, we remove bold text for status. We
change to use a menu separator to define a "status" at the top of the
 menu
2016-10-08 23:32:21 +02:00
nathan
82ab3fc7bd Code polish, cleaned up comments 2016-10-08 21:53:43 +02:00
nathan
381e629e72 Code polish 2016-10-08 21:50:37 +02:00
nathan
000d069bfc windows/mac swing menus working with keyboard navigation/mnemonics 2016-10-08 21:47:53 +02:00
nathan
d4ac42d21f WIP adding mnemonic support for windows/mac 2016-10-08 17:42:05 +02:00
nathan
f0fe9fa9a2 Fixed issue with keyboard navigation/mnemonics on popup window. 2016-10-08 17:41:21 +02:00
nathan
f2065a59fa Added mnemonic support for linux 2016-10-08 00:18:17 +02:00
nathan
bdf76e13fd Added extra configuration checks when running windows/mac for
unsupported tray types.
2016-10-05 11:58:33 +02:00
nathan
53ece33ac5 Adjusted scaling factor for mac 2016-10-05 11:54:28 +02:00
nathan
42d053398f Fixed issues with windows/mac 2016-10-04 16:59:22 +02:00
nathan
62c73e8f32 Fixed gtk entry/sub-menu removal for SWT. code polish 2016-10-04 15:36:00 +02:00
nathan
b8cd5c875f Code polish 2016-10-04 00:21:40 +02:00
nathan
049d5b2109 Fixed issue with new dispatch methods + SWT 2016-10-04 00:21:29 +02:00
nathan
af131eb805 Fixed issue when obliterating menus (via swt). It is now "correct" in
that it won't try to create/delete menus when obliterating
 them+children
2016-10-04 00:20:55 +02:00
nathan
6f11bb9e9a Fixed typo in instructions 2016-10-04 00:18:23 +02:00
nathan
4bbe713519 Updated examples to include new functionality 2016-10-03 23:58:25 +02:00
nathan
7e2834c0cb Added setEnabled() for menu+entries, misc bug fixes for windows 2016-10-03 23:12:00 +02:00
nathan
ad8cd3709c Consolidated gtk menu (so the menuentry has the entry+menu) 2016-10-03 22:29:33 +02:00
nathan
b1398392c7 Fixed windows problem 2016-10-03 22:28:24 +02:00
nathan
b41c62c898 WIP menu cleanup 2016-10-03 20:14:09 +02:00
nathan
14ff3fae06 Fixed issues with submenu's and our popup auto-hide tracker 2016-09-29 13:07:58 +02:00
nathan
05231587d2 Code polish, fixed newly craeted JPopupMenu border + margin info. 2016-09-29 03:23:33 +02:00
nathan
b354daab68 WIP swing submenus 2016-09-29 03:00:29 +02:00
nathan
7509d7c960 Code polish 2016-09-29 02:59:59 +02:00
nathan
8d564675f8 Code polish 2016-09-29 02:07:43 +02:00
nathan
bf3cb8de11 Refactored out Menu object (from the SystemTray object). Converted
SystemTray into a crossPlatform proxy. WIP submenus
2016-09-29 01:44:11 +02:00
nathan
de8d1d8b07 Fixed swing border/margins for menus/entries 2016-09-28 18:35:25 +02:00
nathan
4b10ff9eac Added comments 2016-09-28 18:34:38 +02:00