Commit Graph

14231 Commits

Author SHA1 Message Date
Adam
ba9ffb1d60 infobox manager: make threadsafe
Currently this gets called from multiple threads, mostly client and EDT,
causing unsafe acces to infoBoxes.
2020-05-24 15:52:28 -04:00
Adam
cb1fc598ba plugins: add Plugin::getName
This avoids the infobox manager from having to access plugin descriptor
annotations, making it easier to write tests for
2020-05-24 15:52:28 -04:00
Owain van Brakel
37b14eaa1d Merge pull request #2611 from swazrgb/externalplugins-developmentmode 2020-05-24 21:09:50 +02:00
Owain van Brakel
f70794bc18 Merge pull request #2612 from swazrgb/shutdown-executor
client: Also shutdown executor in PluginManager
2020-05-24 19:35:58 +02:00
swazrgb
1644dbd245 Also shutdown executor in PluginManager 2020-05-24 19:17:20 +02:00
Owain van Brakel
0df61a55cc Merge pull request #2607 from Owain94/externalpanelerrormsg 2020-05-24 18:54:20 +02:00
Owain van Brakel
39fa182d98 Merge pull request #2610 from swazrgb/shutdown-executor 2020-05-24 18:50:34 +02:00
Max Weber
98395b94b1 ItemManager: only canonicalize notes
f9d3647db1 made ItemManager return a price
for placeholders, which is wrong.
2020-05-24 09:51:51 -06:00
Vidyogamasta
0168bf0422 loot tracker: float group to top of list when obtaining drop 2020-05-24 11:41:26 -04:00
Adam
e9aac02a43 keyremapping: use modified key map for mapping key release
This cleans up the code some and is more-correct since it will eg. no
longer remap fkeys on keyrelease even when it was not remapped on
keypress.
2020-05-24 10:32:52 -04:00
swazrgb
e23c6a0c46 Support loading external plugins from sources enabling hotswapping
Enables the pf4j [development mode](https://pf4j.org/doc/development-mode.html)
to support loading external plugins from sources, which enables java's
hotswap functionality.

To use this feature set the `plugin.development.path` property or
`PLUGIN_DEVELOPMENT_PATH` environment variable to the directories
containing your plugins, e.g. `../plugins;../my-custom-plugins`

Once set the `ExternalPluginManager` will ignore the configured
repositories and externalmanager directory, and instead load all
the built plugins from the specified directories.

Utilizing this feature does require some additional configuration
of the build of the plugins `build.gradle.kts`. Within the `subprojects`
section add:

```
tasks.register<Copy>("copyDeps") {
    into("./build/deps/")
    from(configurations["runtimeClasspath"])
}
```

See https://github.com/open-osrs/plugins/pull/260 for the `openosrs/plugins` change

This enables the following workflow:

0. Optional tip: Set the `external.system.substitute.library.dependencies` registry value to `true` to force classpath resolution within the project

1. Open the `runelite-client` project in IntelliJ

2. Add the `plugins` repository as a module (Gradle -> Plus symbol ->
`plugins/build.gradle.kts`)

3. Gradle build the client with: `build publishToMavenLocal :runelite-client:publishToMavenLocal :runelite-api:publishToMavenLocal :http-api:publishToMavenLocal`

4. Gradle build the plugins with: `build copyDeps`

5. Add the `PLUGIN_DEVELOPMENT_PATH` environment variable to the run
configuration

Once the above is done the edit -> reload -> edit cycle can begin:

1. Start the client in debug mode using the run goal

2. Edit the external plugin

3. Perform Build > Build Module

4. Observe hotswapping in action!

5. If hotswapping failed, or your change requires a plugin restart,
click the hotswap button in the plugin list to instantly restart it
2020-05-24 08:27:37 +02:00
swazrgb
3ce0cb9dc1 Shutdown ExecutorService in ExternalPluginManager
Also name threads for easy identification
2020-05-24 03:29:30 +02:00
github-actions[bot]
34c40a6d7d Merge pull request #2608 from open-osrs/NPC-UPDATE-c8937a609
Client: Update NPC stats
2020-05-24 00:15:47 +00:00
OpenOSRS
fbe29a79b5 Client: Update NPC stats 2020-05-24 00:09:18 +00:00
Jordan Atwood
c2a9ac443b client: Simplify ItemContainer usage
Because itemManager#getItemPrice() canonicalizes the passed item ID, it
is no longer necessary to get noted items' base IDs or otherwise
canonicalize item IDs before interacting with the method.
2020-05-23 16:22:29 -04:00
Jordan Atwood
f9d3647db1 itemmanager: Canonicalize price lookup item IDs 2020-05-23 16:22:29 -04:00
Jordan Atwood
39a2407b71 examine: Move price lookups off executor
Historically price lookup was done by sending a web request on price
lookups, which required calls to be done on an executor. As of
a1ae397e11, client prices are loaded periodically and cached, thus no
longer imposing any thread requirement on price lookup.
2020-05-23 16:22:29 -04:00
melkypie
582798148a report button: add clock tag
Co-authored-by: Malfuryent <jossparla94@gmail.com>
2020-05-23 20:54:32 +03:00
Malfuryent
33feac8e3b report button: add ability to switch between 24h and 12h clock
Co-authored-by: melkypie <5113962+melkypie@users.noreply.github.com>
2020-05-23 20:54:26 +03:00
Hydrox6
73d928ea89 gpu: add warning message to compute shaders option 2020-05-23 13:40:23 -04:00
Jordan Atwood
116e1a0090 loot tracker: Use "an" prefix for monster names starting with vowels 2020-05-23 13:35:00 -04:00
Adam
eae4e0b6a0 wintertodt plugin: add option to disable overlay
Co-authored-by: Jonathan Taylor <jonathan@taylorhq.com>
Co-authored-by: Pharros <thepharros@gmail.com>
2020-05-23 13:30:10 -04:00
Corey Forsyth
f85f6be5cf chatfilter: add option to block repeated public messages
Co-authored-by: Adam <Adam@sigterm.info>
2020-05-23 13:19:14 -04:00
Corey Forsyth
0715e3c9fc chatfilter: add collapse duplicate chat option
Co-authored-by: Adam <Adam@sigterm.info>
2020-05-23 13:19:14 -04:00
Tim van Rossum
ab22082e38 boosts: Add option to disable boost threshold notifications (#11668)
Co-authored-by: Tomas Slusny <slusnucky@gmail.com>
2020-05-22 21:58:22 +02:00
Anthony Alves
d434e48d77 chat-history: add option to clear history for all chatbox tabs (#11543)
Signed-off-by: Tomas Slusny <slusnucky@gmail.com>
Co-authored-by: Tomas Slusny <slusnucky@gmail.com>
2020-05-22 21:48:12 +02:00
Owain van Brakel
952fe24a03 externalpanel: Reset the status text after error 2020-05-22 13:54:40 +02:00
Owain van Brakel
c8937a609f Merge pull request #2605 from open-osrs/GRADLE-DEPS-UPDATE-5bf4f9c9a 2020-05-22 13:52:33 +02:00
trimbe
f7532b2e9c bank tags: clear remembered search when the active tag tab is clicked
This fixes an issue where the tab would reactivate if you clicked the active tab while the withdraw-x dialog was open. This was caused by the handling for withdraw-x, which activates the tab again a tick after the withdraw-x dialog is closed.
2020-05-22 11:24:16 +02:00
Melky
ab6b8c70ae screenmarker: add ability to put screen markers around widgets (#11552)
Gives you the ability to put a screen marker around a widget that has a menu option attached to it

Co-authored-by: Jasper Ketelaar <Jasperketelaar@kpnmail.nl>
Co-authored-by: Tomas Slusny <slusnucky@gmail.com>
2020-05-22 10:28:01 +02:00
Jordan
226e13aa94 Merge pull request #11581 from Nightfirecat/center-more-hot-cold-clues 2020-05-21 22:23:04 -07:00
Jordan Atwood
e658928277 HotColdLocation: Center some location spots
Center some hot-cold locations as reported and verified from the mega
issue.

Ref: runelite/runelite#9601
2020-05-21 21:49:29 -07:00
github-actions[bot]
e592d1e05d Merge pull request #2606 from open-osrs/NPC-UPDATE-5bf4f9c9a
Client: Update NPC stats
2020-05-22 00:16:07 +00:00
OpenOSRS
042439ba66 Client: Update NPC stats 2020-05-22 00:08:30 +00:00
OpenOSRS
9c3ec9fb4c project: Update gradle dependencies 2020-05-22 00:03:26 +00:00
Owain van Brakel
5bf4f9c9a9 Merge pull request #2604 from Owain94/xpmultiplier 2020-05-21 22:46:38 +02:00
Owain van Brakel
3a50e657fb NPCManager: Blacklist some NPCs from xp multiplier 2020-05-21 22:14:44 +02:00
Matthew Kramer
a01a2483f7 metronome: add independent volume configuration 2020-05-21 15:44:21 -04:00
Adam
aea258fb5c ge plugin: add buy limit reset timer
Co-authored-by: renfc <renfc145@gmail.com>
2020-05-21 14:34:35 -04:00
geheur
aae994cbf1 menu swapper: add swaps for buy and sell 2020-05-21 14:03:28 -04:00
Owain van Brakel
07205c89d3 Merge pull request #2603 from Owain94/upstream-2105-2 2020-05-21 18:38:15 +02:00
Owain van Brakel
d33aff6a41 Merge remote-tracking branch 'runelite/master' 2020-05-21 18:30:38 +02:00
Tomas Slusny
63eab81d11 Use multiplicative color offsets for BackgroundComponent border (#11658)
Instead of fixed color offsets for outer and inner border colors switch
to multiplicative offsets. This also makes overlay color alpha
recoloring work properly with background component border.

Signed-off-by: Tomas Slusny <slusnucky@gmail.com>
2020-05-21 17:55:48 +02:00
Owain van Brakel
4e08497552 Merge pull request #2602 from Owain94/upstream-2105 2020-05-21 13:58:10 +02:00
Owain van Brakel
077917ffde Merge remote-tracking branch 'runelite/master' 2020-05-21 13:49:10 +02:00
Runelite auto updater
10b502278e Bump for 1.6.17-SNAPSHOT 2020-05-21 11:43:06 +00:00
Runelite auto updater
79361aa17a Release 1.6.16 2020-05-21 11:42:57 +00:00
Owain van Brakel
e690df0852 Merge remote-tracking branch 'runelite/master' 2020-05-21 13:34:48 +02:00
RuneLite Cache-Code Autoupdater
592ca5c112 Update Scripts to 2020-05-21-rev182 2020-05-21 10:32:20 +00:00
RuneLite Cache-Code Autoupdater
c319105ed4 Update Widget IDs to 2020-05-21-rev182 2020-05-21 10:32:18 +00:00