Skip to content

Releases: CottonMC/LibGui

15.1.0 for Minecraft 1.21.11

16 Dec 21:11
895067f

Choose a tag to compare

Repository version: 15.1.0+1.21.11

Changed

  • Updated to Minecraft 1.21.11
  • WLabel text hover and click events now only apply when the cursor's Y coordinate is also on top of the text

15.0.0 for Minecraft 1.21.9-rc1

26 Sep 22:47
d3d8d4a

Choose a tag to compare

Repository version: 15.0.0+1.21.9-rc1

Changed

  • Updated to Minecraft 1.21.9
  • Changed the parameters of the following WWidget methods to use the new vanilla input records:
    • onMouseDown(Click, boolean doubled)
    • onMouseDrag(Click, double offsetX, double offsetY)
    • onMouseUp(Click)
    • onClick(Click, boolean doubled)
    • onCharTyped(CharInput)
    • onKeyPressed(KeyInput)
    • onKeyReleased(KeyInput)
    • Two of these methods now automatically detect double clicks. That data is forwarded from vanilla code.

Removed

  • Deprecated classes CottonHud and Scissors

14.0.0 for Minecraft 1.21.6

18 Jun 11:28

Choose a tag to compare

Repository version: 14.0.0+1.21.6

Added

  • WidgetHudElement which wraps a WWidget for the vanilla HUD API

Changed

  • Updated to Minecraft 1.21.6
  • Scissors.push(DrawContext, int, int, int, int) no longer allows a null draw context
  • All text colours now need to set the alpha channel to match vanilla's updated text rendering methods

Deprecated

  • CottonHud in favour of WidgetHudElement
  • Scissors in favour of vanilla scissor methods in DrawContext

Removed

  • Scissors.push overload without DrawContext parameter

Known issues

  • Ghost item icons have a square overlay on top of them instead of just affecting the item

13.1.0 for Minecraft 1.21.5

17 Apr 19:20

Choose a tag to compare

Repository version: 13.1.0+1.21.5

Added

  • ScreenNetworking.getReadyEvent() which will be triggered when messages are ready to send (#149)
  • SyncedGuiDescription.getNetworking() to conveniently get access to the ScreenNetworking instances
  • ScreenMessageKey, which holds a screen message's ID and codec in one class. It can be used in new overloads of ScreenNetworking.send/receive.
  • DataSlot, which is a property delegate-like container for automatically syncing GUI data. They can be registered using SyncedGuiDescription.registerDataSlot().

Changed

  • ScreenNetworking.of() deprecated in favour of SyncedGuiDescription.getNetworking()

Fixed

  • ObservableProperty using == instead of equals for change events

13.0.0 for Minecraft 1.21.5

25 Mar 16:36
90beac9

Choose a tag to compare

Repository version: 13.0.0+1.21.5

Note: There might be performance regressions in GUIs that use NinePatchBackgroundPainter heavily as the shader code was not yet completely ported to this release. This doesn't affect vanilla nine slice textures.

Changed

  • Updated to Minecraft 1.21.5
  • Text fields now use vanilla textures instead of drawing the widget fully in code

Removed

  • The already nonfunctioning WTextField.setBackgroundPainter API

5.4.3 for Minecraft 1.18.2

08 Mar 17:16
fb08b53

Choose a tag to compare

Repository version: 5.4.3+1.18.2

Fixed

  • Crash due to client-only fields being referenced in common code (#231)
  • WItem content positioning (#181)
  • Selecting text in a WTextField applies blue tint to wrong field (#182)

12.0.1 for Minecraft 1.21.2-1.21.4

14 Dec 18:21
049d46b

Choose a tag to compare

Repository version: 12.0.1+1.21.2

Changed

  • Now supports 1.21.4

12.0.0 for Minecraft 1.21.2/3

23 Oct 16:39
45dc93e

Choose a tag to compare

Repository version: 12.0.0+1.21.2

Added

  • GuiDescription.get/setUseDefaultRootBackground: can be used to disable the default background painter if your root panel doesn't need it (useful for tab panels)
  • Scissors.push overload taking a nullable DrawContext. It's highly recommended that you move existing code to use this overload since it flushes buffered draw calls automatically. Otherwise, parts of widgets etc. can just disappear in GUIs using scissors.

Changed

  • Updated to 1.21.2/3
  • WDynamicLabel.alignment renamed to horizontalAlignment (along with getters and setters)

11.1.0 for Minecraft 1.21(.1)

15 Aug 16:14
798fae5

Choose a tag to compare

Repository version: 11.1.0+1.21

Added

  • Option for WLabel, WText and WDynamicLabel to draw shadows (#248 by @MarcusElg, #233, #245)
  • Vertical alignment in WDynamicLabel and a getter for the horizontal alignment (#249 by @MarcusElg, #202)
  • Many new public properties in WItemSlot:
    • Getters for the backing inventory details: getInventory, getStartIndex, getSlotsWide, getSlotsHigh
    • Getters for the slot peer details: getPeers, getPeerStartId (#247)
  • Missing javadoc for some methods in the widgets mentioned before

Fixed

  • Incorrect links and whitespace characters in javadoc

11.0.0 for Minecraft 1.21

24 Jun 12:51

Choose a tag to compare

Repository version: 11.0.0+1.21

Changed

  • Updated to Minecraft 1.21

Removed

  • Previously deprecated APIs:
    • ValidatedSlot.getFilter
    • ValidatedSlot.setFilter
    • WItemSlot.getFilter
    • WItemSlot.setFilter
    • WListPanel.margin