Commit Graph

198 Commits

Author SHA1 Message Date
nathan
cdb248adbe Added simplified isUnity() check 2017-09-03 14:47:21 +02:00
nathan
bef027f9bf Added extra checks if running ubuntu + unity. there are problems when
launching nautilus/firefox/etc via GTK, so fallback to xdg-open
2017-09-03 14:47:02 +02:00
nathan
4b0b62dc6b Added simplified checks for ubuntu - isUnity(), checks for Unity and
Unity7. Added check to see if nautilus file manager is installed
2017-09-03 14:45:51 +02:00
nathan
b2e29e38cd Changed ActiveRenderer to only permit Canvas now (instead of JFrame) 2017-08-24 22:00:32 +02:00
nathan
a6300d8ba5 Changed method order to make logical sense 2017-08-20 22:54:47 +02:00
nathan
513169b872 Parallel processor will output a stack trace if there are errors processing (and not just the message) 2017-08-18 12:14:02 +02:00
nathan
c6ada706d6 Check for null message when getting the exception message 2017-08-17 15:25:21 +02:00
nathan
545fef3a7e Added KEY_TEXT_ANTIALIASING for rendering text 2017-08-17 11:17:54 +02:00
nathan
15cdc022b7 Refactored getExceptionMessage 2017-08-14 14:28:16 +02:00
nathan
36c53f2bc9 Added getExceptionMessage() utility method. 2017-08-14 14:27:34 +02:00
nathan
2f9a0da32f Added ability to set the total workload, then get the current progress -- without blocking 2017-08-14 12:19:25 +02:00
nathan
c927093388 Added back the ParallelProcessor, cleaned and simplified, and without any dependencies. 2017-08-13 23:30:05 +02:00
nathan
f0331e8cc8 Fix potential issues with reporting expections 2017-08-05 00:48:35 +02:00
nathan
305b76447c Moved TeeOutputStream from internal utils to public utils. 2017-08-04 23:32:08 +02:00
nathan
fe788c82c1 DiskStorage save delay is now part of the builder. 2017-08-04 17:45:17 +02:00
nathan
9d177a779b Renamed getMonitor methods (so the name makes more sense). Added
wrappers for getting monitor at mouse location.
2017-08-04 17:38:47 +02:00
nathan
99bd330730 Added File.touch 2017-08-04 17:38:07 +02:00
nathan
99b95074ab Converted storage to use the 'single writer principle' for read speed 2017-08-04 17:33:54 +02:00
nathan
85a745dc3a Simplified storage API. Throws RuntimeException if trying to write to a
read-only storage.
2017-08-04 16:26:32 +02:00
nathan
ec84231b1b Removed default storageKey get() methods (they were confusing) 2017-08-04 16:04:30 +02:00
nathan
973d6d99c2 Refactored Storage.make() -> Storage.build(). Removed IOExceptions when
data cannot be read (an error will be emitted via logger or StdErr, and
will return null). Storage now has a default (kryo based) serialization
manager if none is specified.
2017-08-02 21:55:32 +02:00
nathan
a61f3522b0 Updated storage comments and methods. Added storage.close() as a convenience method. 2017-08-01 10:22:50 +02:00
nathan
7c2fc36d57 Added copyright 2017-08-01 00:55:13 +02:00
nathan
d3169e95bc Moved classes that should not have been in the Utilities project. 2017-08-01 00:54:57 +02:00
nathan
efe31d4818 added getSha256WithSalt(byte[], byte[]) 2017-08-01 00:54:17 +02:00
nathan
a615545adc Made it clear that charToBytes returns UTF16. 2017-08-01 00:53:36 +02:00
nathan
6decb2b234 Storage now depends on StorageKey (instead of ByteArrayWrapper), in order
to make it clear that it must be a SHA256 hash, and not just bytes of arbitrary length.
2017-08-01 00:52:53 +02:00
nathan
2a7d8397e7 Removed ability to wrap a String 2017-08-01 00:51:17 +02:00
nathan
5f6ab6ae88 Comment polish 2017-08-01 00:15:41 +02:00
nathan
e7a8fefd60 Reverted change 2017-08-01 00:15:31 +02:00
nathan
0c5d5e2ef8 Fixed storage initialization record count offset 2017-07-31 23:51:10 +02:00
nathan
c3f8ad3a6e Fixed comment typos 2017-07-31 21:58:17 +02:00
nathan
94eadc2add Added showMessageDialog, which will show in the center of the screen where the mouse currently is. 2017-07-31 17:51:46 +02:00
nathan
271ea9eefa Added clamp. 2017-07-30 22:21:11 +02:00
nathan
cbc4d8e14c Moved NativeLoader to Utilities. 2017-07-30 20:17:44 +02:00
nathan
4c77950f36 FileUtil.moveFile now supports all permutations 2017-07-29 23:07:41 +02:00
nathan
a5cf709801 FileUtil.copyFile now supports all permutations 2017-07-29 23:05:57 +02:00
nathan
b1d4fba159 Moved Hash specific methods from Sys -> HashUtil 2017-07-29 22:20:58 +02:00
nathan
47e73efb52 ByteArrayWrapper.wrap(String) no longer uses SHA256 hash of string, it
uses the UTF8 bytes of the string directly.
2017-07-29 22:17:21 +02:00
nathan
b129364ee0 FileNormalization will return absolute file. 2017-07-29 21:42:37 +02:00
nathan
88312df832 ActiveRenderLoop (for Swing) now accepts Window (instead of just JFrame) 2017-07-28 22:08:18 +02:00
nathan
a1d3b672b0 Moved screen util methods out of swingutil 2017-07-27 23:18:20 +02:00
nathan
c41e05be63 Added getFontWidth 2017-07-27 22:09:57 +02:00
nathan
43dab244a6 Formatting/Comment/Code polish 2017-07-27 22:09:36 +02:00
nathan
b73fef825d Added GTK widget tooltip support. 2017-07-24 14:31:40 +02:00
nathan
e191faa3b8 Cleaned up how errors are thrown for GTK libraries. 2017-07-24 14:30:42 +02:00
nathan
ab8e7e5a79 Added ChromeOS detection 2017-07-23 14:16:41 +02:00
nathan
adbd14eaee Refactored OsType -> OSType 2017-07-23 11:30:52 +02:00
nathan
96724bb0e9 Refactored checking for which GTK version is loaded. The logic has been
simplified.
2017-07-23 11:24:09 +02:00
nathan
b2635cfa8c Removed Gtk import 2017-07-22 13:00:52 +02:00
nathan
be6cf84c37 Moved classes Utilities project to internal Utilities, as they
depended on github projects. The public utilities should not
have any dorkbox dependencies.
2017-07-22 12:22:17 +02:00
nathan
78efb022d9 Removed MathUtil dependency from Version, it was unnecessary 2017-07-22 02:25:50 +02:00
nathan
bf59e5a87c Changed fields to protected scope to permit overriding functionality 2017-07-20 23:57:06 +02:00
nathan
9bb3fa0db8 Added getting version/beta/build info from a version. Code polish. 2017-07-19 01:53:18 +02:00
nathan
a3f24a3d35 Added Version copy constructor, added creating a new version via a
double.
2017-07-19 01:42:06 +02:00
nathan
8d7d35182a Added preferGtk3 to GTK loading. Fail loading GTK if GTK2 is forced, and
GTK2 cannot load. Code polish.
2017-07-19 00:50:42 +02:00
nathan
1abe7b60ab Added exception to GTK load ordering for Kali (it has rendering issues
with GTK3. GTK2 looks just fine)
2017-07-18 16:40:15 +02:00
nathan
c84f6e02cb Added GTK detection to SwingUtil (specific for checking if Swing has
already loaded GTK)
2017-07-18 16:36:46 +02:00
nathan
c8f2bef1d9 Added isNumber for characters 2017-07-18 16:34:06 +02:00
nathan
740087f2cf Code polish, added Shell convenience method 2017-07-18 02:25:10 +02:00
nathan
3ab5076d9b Cache getInfo for linux/unix 2017-07-18 02:20:08 +02:00
nathan
a5d7a7293e Now support GTK3 versions less than 3.10 (3.4 was tested, as released on
Ubuntu 12.04). Make sure not to touch Gtk interface while loading Gtk
2017-07-17 01:41:53 +02:00
nathan
bb15ca12a8 Added version utility class to manage comparing versions. X.X
.X-BETA-hash is the max supported
2017-07-17 00:34:36 +02:00
nathan
4f20a7524b Code polish 2017-07-16 10:42:28 +02:00
nathan
b2acabef58 Code polish 2017-07-16 02:17:40 +02:00
nathan
ebf482086d Made public so build can pickup class 2017-07-16 02:15:12 +02:00
nathan
0ecc75aa7d Updated Desktop utility class to use JNA native access for
browseURL/email/browseDirectory methods. This also fixed issues where
xdg-open could cause strange problems with Chrome on Linux (but not as
the default browser).
2017-07-16 02:08:15 +02:00
nathan
dd7892483e Added gtk_show_uri 2017-07-16 01:43:52 +02:00
nathan
2c31963337 Code polish for the shell executors 2017-07-16 01:43:34 +02:00
nathan
ec0772a9b0 Added Async Shell Executor 2017-07-16 01:41:20 +02:00
nathan
79c41e2a95 Fixed issues where the shell executor could hang 2017-07-16 01:40:58 +02:00
nathan
2ca0b14164 Added Desktop Utility functions, similar to java.awt.Desktop with cases
built-in for Linux/Unix when GTK3 is loaded (and thus, java.awt.Desktop
is not supported). Code derivative from QZTray, which was released
exclusively as Apache 2.0 for this purpose.
2017-07-16 00:16:51 +02:00
nathan
e588ed19c1 ShellProcessBuilder -> ShellExecutor. Static method to simplify shell
execution added. Added ability to pass in environment variables to new
process. Added better detection for current shell in linux/unix (could
be improved...). Added flag for executing process as a shell command.
Output now defaults to en-US.UTF_8
2017-07-15 23:55:36 +02:00
nathan
1554077d27 Renamed JavaProcessBuilder -> JvmExecutor 2017-07-15 23:53:51 +02:00
nathan
38a6899049 ShellProcessBuilder -> ShellExecutor. Static method to simplify shell
execution added. Added ability to pass in environment variables to new
process. Added better detection for current shell in linux/unix (could
be improved...). Added flag for executing process as a shell command.
Output now defaults to en-US.UTF_8
2017-07-15 23:53:31 +02:00
nathan
cf0f04d6a7 Code polish. Thread.notify -> notifyAll 2017-07-15 23:49:00 +02:00
nathan
e8c42ae48d Fixed log message logger 2017-07-15 18:37:47 +02:00
nathan
f143dff1fd Added isGtk2, isGtk3, and isGtkLoaded to OSUtil.DesktopEnv, so that one
can query to see GTK status without loading GTK.
2017-07-15 18:37:03 +02:00
nathan
92c0a7f42a Fixed log message logger 2017-07-15 18:36:00 +02:00
nathan
e0e7bb61f5 Moved Classloader utility methods into their own class. 2017-07-15 18:25:10 +02:00
nathan
67cf2745d2 Code polish 2017-07-15 18:24:39 +02:00
nathan
8ed1e0d3b0 Polished JavaFX and SWT dispatch access to remove hard dependency on
JavaFX and SWT. Now uses JNA to create the classes for SWT access + a
mix of reflection. JavaFX uses reflection.
2017-07-15 18:15:19 +02:00
nathan
cdc2bbd2cf (reverted) Changed Util class names 2017-07-15 18:10:14 +02:00
nathan
4ecafbf50c Removed unnecessary SWT specific code 2017-07-14 18:46:19 +02:00
nathan
7c528918f5 Moved framework (javafx/swt/etc) stuff into it's own class 2017-07-14 18:45:46 +02:00
nathan
d79a5c6ad7 Changed Util class names 2017-07-14 18:45:07 +02:00
nathan
186394a3fc Moved browse() into framework 2017-07-14 18:44:37 +02:00
nathan
bf5142919d Moved JNA to Utility module for use by other applications. 2017-07-14 18:37:46 +02:00
nathan
8cbc753baa Windows JNA now uses JnaHelper 2017-07-14 01:31:37 +02:00
nathan
713837cf4c Code polish for accessing User32 2017-07-14 00:58:28 +02:00
nathan
409d6d0931 Added Unity7 (ubuntu 17.04) desktop env. 2017-07-13 22:42:14 +02:00
nathan
5a4626c678 Dead code cleanup 2017-07-12 02:24:55 +02:00
nathan
3c2e06fdb1 Moved Windows10 check to OSUtil.Windows 2017-07-12 02:02:38 +02:00
nathan
04d40a67b5 Code cleanup 2017-07-12 02:01:58 +02:00
nathan
e4600da849 Removed no longer needed classes 2017-07-12 01:46:23 +02:00
nathan
3929df3380 Code polish 2017-07-12 01:30:16 +02:00
nathan
91e9f28944 Consolidated JNA from Console project into the Utils project 2017-07-11 22:32:26 +02:00
nathan
73163b769e Added isDefaultLookAndFeel() 2017-07-11 14:14:59 +02:00
nathan
247827ec75 Added version check for windows 10+ 2017-07-11 14:14:43 +02:00
nathan
97aee006a1 Code polish. Added getting a buffered image from an icon 2017-07-11 02:03:53 +02:00