Commit Graph

63 Commits

Author SHA1 Message Date
Tomas Slusny
8a9523ec5a Add logback logger that will log to file
Add dependency on logback and configure logger to log to
~/.runelite/logs/application.log with rolling file appender, that means
every 10MB file will be rolled and also every day file will be rolled
with maximum history of 30 days, to not flood user's system space.

Add new console parameter -debug, because logback properties cannot be
set from console like slf4j-simple ones, so it needs to be done in a bit
more complicated way.

Signed-off-by: Tomas Slusny <slusnucky@gmail.com>
2018-02-12 15:09:57 -05:00
Adam
f50c657122 runelite-client: shut down discord service when closed
It is preventing jvm termination otherwise for some reason
2018-02-12 11:57:02 -05:00
Tomas Slusny
15ad949123 Add Discord RPC service
Add injectable Discord RPC service that will broadcast Discord events
through event bus and have API for setting Discord Rich Presence status.

Signed-off-by: Tomas Slusny <slusnucky@gmail.com>
2018-02-04 17:20:03 +01:00
UniquePassive
0cede52ba5 Add a config setting for the game applet's size 2018-01-26 00:49:00 +01:00
Adam
f507354f84 Remove external plugin support
Jagex has requested I take steps to prevent users from making plugins
which are in violation of the game rules. This limits plugins to the core
plugins.
2018-01-25 17:03:09 -05:00
UniquePassive
d1cb80004d runelite-client: add screenshot plugin 2018-01-20 10:55:09 -05:00
UniquePassive
f242e8d047 runelite-client: add client ui loaded event 2018-01-20 10:54:58 -05:00
Adam
948f31769f runelite-client: fix plugin manager test
loadCorePlugins doesn't throw anymore when a plugin fails to load, just logs
2018-01-11 18:59:27 -05:00
Abex
6a57783541 client: Add option to disable custom window chrome/style 2018-01-09 19:25:25 -05:00
Adam
3f5bf99c70 runelite-client: fix --no-rs 2018-01-09 08:13:05 -05:00
Adam
05dc2eb39e Consistently capitalize RuneLite 2018-01-07 17:25:48 -05:00
Tomas Slusny
6c2e827d4a Move creation of UI to ClientUI class
- Move setting of UI-related variables to ClientUI class (create new
"create" static method to set them before creating the UI window)
- Clean up ClientUI class

Signed-off-by: Tomas Slusny <slusnucky@gmail.com>
2017-12-29 18:17:16 +01:00
Tomas Slusny
6bf63a447f Cleanup RuneLite class fields
- Remove runelite variable
- Use setters for options and injector (to use them outside of tests)
- Remove getter for gui and make it package-private
- Use package-private gui field when providing ClientUI from
RuneliteModule

Signed-off-by: Tomas Slusny <slusnucky@gmail.com>
2017-12-29 18:17:16 +01:00
Tomas Slusny
b4eba39f6b Move creation of tray icon to ClientUI
Move creation of tray icon from RuneLite to ClientUI.

Signed-off-by: Tomas Slusny <slusnucky@gmail.com>
2017-12-29 18:17:15 +01:00
Tomas Slusny
06836b3e1d Move setTitle to ClientUI
Move setTitle method from RuneLite to ClientUI.

Signed-off-by: Tomas Slusny <slusnucky@gmail.com>
2017-12-29 18:17:15 +01:00
Tomas Slusny
bd521acbb0 Move creation of client to RuneLite
Instead of using setters and getters to move around reference to Client
and creating the client in the client panel, move creation of the Client
to RuneLite and add new field to PluginDescriptor if the plugin should
be loaded when client is outdated.

Signed-off-by: Tomas Slusny <slusnucky@gmail.com>
2017-12-29 18:17:09 +01:00
Tomas Slusny
69b88fe3e3 Extract runQuery to QueryRunner service
Extract runQuery method from runelite to separate Guice service.

Signed-off-by: Tomas Slusny <slusnucky@gmail.com>
2017-12-29 16:41:09 +01:00
Tomas Slusny
984ebb63dd Extract session-related logic to SessionManager
- Extract runelite session related logic from RuneLite to SessionManager
class and expose this as Guice service
- Move WSClient to account package

Signed-off-by: Tomas Slusny <slusnucky@gmail.com>
2017-12-29 16:41:09 +01:00
Tomas Slusny
82ee4a0036 Change Notifier to be injectable service
Move notify methods to Notifier and change it to be injectable Guice
service.

Signed-off-by: Tomas Slusny <slusnucky@gmail.com>
2017-12-29 16:41:09 +01:00
Tomas Slusny
7c989dc105 runelite-client: Add app name to RuneliteProperties 2017-12-19 20:37:40 -05:00
rbbi
bc3af562bd Guice : RuneliteProperties inj (#212) 2017-12-17 04:06:23 +01:00
XrioBtw
7ac5d5935c Fix tooltips rendering behind the game
Fixes #257
2017-12-17 03:29:19 +01:00
Tomas Slusny
4076f75e34 runelite-client: Make overlay UI reuseable and look native 2017-12-13 18:26:56 -05:00
Tomas Slusny
4860eb871f Add chat message recolouring API
- Update api of SendMessage to also include message type
- Create API for updating chat message based on saved colors for normal
and highlighted message and for adding game messages that can be
recolored too
- Update chat commands plugin to use the new API
- Add option to globally disable recoloring to RuneliteConfig

Signed-off-by: Tomas Slusny <slusnucky@gmail.com>
2017-12-07 21:08:36 -05:00
Tomas Slusny
1c86c30e1a Make native notifications lightweight
Remove dependency on external notification library and rewrite
notifications to use lightweight native system notification
implementations:

* Linux - notify-send
* OS X - apple script - display notification
* Windows - TrayIcon

Signed-off-by: Tomas Slusny <slusnucky@gmail.com>
2017-12-02 15:01:05 -05:00
Vagrant User
9cb32c1574 Add support for native notifications
Replace current TrayIcon notifications with system-native notifications.
Supports most of the operating systems (the important ones are Windows,
Linux and OS X).

Resolves: #230

Signed-off-by: Tomas Slusny <slusnucky@gmail.com>
2017-12-01 11:31:43 +01:00
Adam
ac4703566f runelite-client: use lombok for slf4j logger creation 2017-11-30 16:08:03 -05:00
Adam
b6c90b33a6 runelite-client: fix not initializing default config
Config manager scans plugins from the plugin manager for configurations
2017-11-19 12:57:43 -05:00
Adam
d047af14d0 runelite-client: add support for dynamically loaded plugins 2017-11-18 14:41:05 -05:00
Adam
fda56fb235 runelite-client: use guice for dependency injection 2017-11-13 18:05:16 -05:00
Tyler Hardy
89f0b59945 runelite-client: add runelite config with tooltip config 2017-11-09 21:04:40 -05:00
Adam
7846a543b1 runelite-client: add setRunelite for tests 2017-11-03 19:01:13 -04:00
Adam
59552896ed Remove object wrappers and use mixins to inject functionality
This causes hierarchy to be runelite-client -> runelite-api and
injected-client -> runescape-api -> runelite-api. The mixin injector
fufills the runelite-api interface with access to the runescape-api
interfaces. The mixins live in runelite-mixins and are not loaded within
the client.

Note the obfuscated client classes do not pass JVM verification on 7+,
so the mixins are currently set to target Java 6.
2017-08-19 13:58:06 -04:00
Adam
f1ac4b3539 runelite-client: bring to front when tray icon is clicked 2017-07-23 13:01:37 -04:00
Adam
54f9a0cf70 runelite-client: add version to title 2017-07-23 12:20:09 -04:00
Adam
fe487f5795 runelite-client: add substance graphite look and feel 2017-07-22 14:15:16 -04:00
Adam
653128cd97 runelite-client: fix some incorrect swing usage
All swing operations should be on the event dispatch thread
2017-07-22 14:08:41 -04:00
Seth
0eb197d7b2 runelite-client: add infobox and timers plugin 2017-07-18 18:48:46 -04:00
Adam
f8178aa2ee runelite-client: split item price loader out of item manager, move into game
Also add synchronous getItemPrice
2017-07-16 13:10:25 -04:00
Adam
63192e5249 runelite-client: add synchronous job scheduler
Convert existing plugins to use it, so that the code all runs on the same
main game thread. Fixes various thread related issues caused from
accessing game state from executor threads.
2017-07-11 10:16:15 -04:00
Adam
3ac8d9df67 runelite-client: split plugin loading from plugin start so that plugins can access configuration on start 2017-07-09 17:38:34 -04:00
Kronos
d03128c872 Add CombatNotifier plugin for afk notifications 2017-06-28 12:44:49 +10:00
Adam
4844d024f8 runelite-client: add item manager for caching item prices 2017-06-13 19:35:28 -04:00
Adam
39430395ef runelite-client: check saved session validity 2017-05-20 11:49:24 -04:00
Adam
9e8bf482cb runelite-client: set default config by default 2017-05-20 10:58:38 -04:00
Adam
0e6d408aee runelite-client: add config plugin 2017-05-19 12:20:28 -04:00
Adam
79a10cc2d2 runelite-client: add logout feature to account plugin 2017-05-16 20:30:08 -04:00
Adam
e90e6ea2ab runelite-client: create session file directory if it doesn't exist 2017-05-14 19:52:28 -04:00
Adam
cf4e9fab1d Add account plugin, and support for acquiring a session with the account webservice 2017-05-14 19:23:44 -04:00
Adam
1ce044c308 runelite-client: add --no-rs option 2017-05-14 18:35:38 -04:00