This simplfies the code and improves performance by only needing to loop
over the menu entries instead of the inventory and checking all types of
inventories.
- Fix exceptions being thrown when losing focus on the client when
searching. There is still an exception when spam clicking, but that was
always there to begin with.
- Fix searching while using the GE window and while using a shop window.
Add support for adding RS widgets to RuneLite overlay system and make
them moveable with persisted positions during restarts.
Depends on #3820 for widget ids
Signed-off-by: Tomas Slusny <slusnucky@gmail.com>
Use Overlay#getBounds for getting correct bounds in OverlayManager in
case overlay overrides getBounds with custom functionality.
Signed-off-by: Tomas Slusny <slusnucky@gmail.com>
Move initialization of Discord service and EventBus after ClientUI
startup to display the ClientUI sooner
Signed-off-by: Tomas Slusny <slusnucky@gmail.com>
- Properly load configuration when first showing ClientUI instead of
waiting for ConfigChanged events.
- Merge open and show to 1 method
- Remove ClientUILoaded as it is no longer necessary
Signed-off-by: Tomas Slusny <slusnucky@gmail.com>
- Merge ClientUI.show and ClientUI.init as now applet can be properly
injected
- Change RuneLite to be autocloseable and send it when opening ClientUI
Signed-off-by: Tomas Slusny <slusnucky@gmail.com>
Instead of exposing static variable provide launch properties to
dependant classes as bound constants in RuneLiteModule.
Signed-off-by: Tomas Slusny <slusnucky@gmail.com>
Instead of requiring to create client from RuneLite just use Guice for
it and separate applet provider.
Signed-off-by: Tomas Slusny <slusnucky@gmail.com>
- Provide OkHttpClient through Guice instead of using it from static
variable
- Chain the RS classes with Guice and inject ClientLoader to RuneLite
class
- Cleanup RS loading classes a bit
Signed-off-by: Tomas Slusny <slusnucky@gmail.com>
Based on points made in #4160, update GitHub issue templates to be more
versatile, do not include any inline comments and be straightforward,
while pointing out reporter in correct direction. Also, one of the
crucial things that previous template for bug report was missing was
RuneLite and Launcher versions and steps to reproduce the bug.
Supersedes #4160
Signed-off-by: Tomas Slusny <slusnucky@gmail.com>
SDMM worlds have both `DEADMAN` and `SEASONAL_DEADMAN` types, so we
must check for the latter first to accurately determine the hiscore
lookup endpoint.
When hiding minimap, there are 2 different widget IDs for respective
resizable mode configurations. Find proper one and hide it.
Fixes#976
Signed-off-by: Tomas Slusny <slusnucky@gmail.com>