~eliasnaur/gio

app: [macOS] send keypress events for modifier keys

This change generates keypress and release events for modifier keys in macOS.
Specifically the Control, Alt, Shift and Command keys.

Signed-off-by: Jeff Williams <[email protected]>
internal/vk: remove methods on C types, for Go 1.24 compatibility

Go 1.24 no longer allows methods on C types (golang.org/issue/60725).

Signed-off-by: Elias Naur <[email protected]>
gpu: remove compute renderer

The compute renderer is a failed experiment: a better port of the
Vello vector renderer exists[0] and the upcoming Go 1.24 release
no longer builds the gioui.org/cpu module because of #60725.

Remove it.

[0] https://github.com/dominikh/jello

Signed-off-by: Elias Naur <[email protected]>
app: [windows] ensure no callbacks after DestroyEvent

Setting the callback handler to nil in DestroyEvent should have no effect,
but may help debugging #603.

Also don't call the default window handler for WM_DESTROY since we're
already handling it.

References: https://todo.sr.ht/~eliasnaur/gio/603
Signed-off-by: Elias Naur <[email protected]>
app: fix race condition between Window.Invalidate and event loop

References: https://todo.sr.ht/~eliasnaur/gio/603
Signed-off-by: Elias Naur <[email protected]>
app: fix typo

Signed-off-by: Elias Naur <[email protected]>
app: [macos] don't relay key events handled by the IME

Widgets such as Editor use certain key events such as the backspace key
to implement text editing. On macOS, such key events are sometimes used
by an input method, and in those cases the key effect would be applied
twice: first by the IME and then the Editor.

Report such key events through the doCommandBySelector callback, which
receives key events not handled by the IME.

References: https://todo.sr.ht/~eliasnaur/gio/616
Signed-off-by: Elias Naur <[email protected]>
app: remove dead code

Signed-off-by: Elias Naur <[email protected]>
app: [android] ensure a new frame is always scheduled when visible and animating

Possible fix to #614.

References: https://todo.sr.ht/~eliasnaur/gio/614
Signed-off-by: Elias Naur <[email protected]>
app: [android] fix compatibility with older Android versions

Previously, setHighRefreshRate requires APIs restricted
to Android 30, or higher.

Tested on Android 6.0.1 (released on 2015).

Signed-off-by: inkeliz <[email protected]>
go.*: update typesetting for unifont panic fix

This commit updates our typesetting dependency to avoid a crash when shaping GNU
unifont. Thanks to Jeff Williams for raising the issue on the mailing list.

Signed-off-by: Chris Waldon <[email protected]>
app: [Window] don't report Win32ViewEvent before window configuration

Fixes: https://todo.sr.ht/~eliasnaur/gio/609
Signed-off-by: Elias Naur <[email protected]>
app: [Windows] compute min, max window sizes correctly when un-minimzing

Fixes: https://todo.sr.ht/~eliasnaur/gio/608
Signed-off-by: Elias Naur <[email protected]>
app: [Windows] don't ignore Min|MaxSize options

The support for minimum and maximum window sizes were broken by a recent
change. Found while investigating #608.

References: https://todo.sr.ht/~eliasnaur/gio/608
Signed-off-by: Elias Naur <[email protected]>
95f63c66 — Larry Clapp 3 months ago
text,widget/material: Update doc for Shaper & Theme

Note that you should use different Themes, with different Shapers, for
different top-level windows, and explain why.

Signed-off-by: Larry Clapp <[email protected]>
Revert "app: [Windows] don't draw after WM_DESTROY destroyed the window"

This reverts commit 635df374952019ff8d274646ea9ce040744daa0f because it
didn't fix #603 after all.

Signed-off-by: Elias Naur <[email protected]>
app: close the window before reporting a GPU error

When a GPU error occurs forcing the reporting of a DestroyEvent is not
appropriate, because the backend that controls the underlying window
is not aware of the error and will continue to report events.

Replace the crude DestroyEvent by stashing the error and asking the
window nicely to close. The, report the stashed error in the
otherwise regular DestroyEvent.

Hopefully, this second attempt fixes #603.

Fixes: https://todo.sr.ht/~eliasnaur/gio/603
Signed-off-by: Elias Naur <[email protected]>
layout,io/input: [API] change Context.Disabled to only disable events

Also unexport Source.Enabled because the nil-ness of its embedded router
is now an implementation detail.

Fixes: https://todo.sr.ht/~eliasnaur/gio/605
Signed-off-by: Elias Naur <[email protected]>
app: [Windows] remove redundant code

Change f7aa4b5c8 changed the fullscreen implementation to no longer require
the position and size of the fullscreen window.

Signed-off-by: Elias Naur <[email protected]>
widget: [API] change Decorations to leave the user in control of window state

As suggested by ~egonelbre, Decorations should not be the source of truth
for the windows state, because external gestures may also change state.

This breaking change removes Decorations.Perform and exposes Maximized
as a bool which is the user's responsibility to set.

Fixes: https://todo.sr.ht/~eliasnaur/gio/600
Signed-off-by: Elias Naur <[email protected]>
Next