Ecosyste.ms: OpenCollective

An open API service for software projects hosted on Open Collective.

github.com/gioui/gio

Mirror of the Gio main repository (https://git.sr.ht/~eliasnaur/gio)
https://github.com/gioui/gio

app: [tvOS] fix build failures

Fixes: https://todo.sr.ht/~eliasnaur/gio/567
Signed-off-by: Aman Karmani <[email protected]>

1be34eec6fd4bb612eb69f84983e702964080868 authored 11 months ago
app: update documentation for Window.Run

Window events are no longer asynchronous, so deadlocks are no longer
possible when calling Run.
...

44ede4eceb513d2f9cf0edf977e0f68f9c1afd0c authored 11 months ago
app: [macOS] synchronize rendering with Core Animation for smooth resizes

Magic incantations lifted from

https://thume.ca/2019/06/19/glitchless-metal-window-resizing/

S...

35785e9c9679c77afb24042b47a2fc532880ba0b authored 11 months ago
app: introduce Config.Focused that tracks the window focus state

Signed-off-by: Elias Naur <[email protected]>

993ec907be4bfd830e8434e82c019c89cc990bbe authored 11 months ago
app: [API] remove StageEvent and Stage

StageEvent served only redundant purposes:

- To detect whether the window has focus. That is co...

d58d386b9b39cb3ac5dbddeb7a5bd5d7f8afabfe authored 12 months ago
app: [API] rename Window.NextEvent to Event to match Source.Event

Signed-off-by: Elias Naur <[email protected]>

93ac0b03f143573834304e39615da14220aaeb64 authored 12 months ago
app: [API] make ViewEvent an interface on all platforms

A uniform type allows convenient nil checks and for future window
backends on platforms other th...

f3fc0d62b8c79a29809f058a446198a7793c0b28 authored 12 months ago
app: [macOS] use cgo.Handle for referring to Go windows from native code

Signed-off-by: Elias Naur <[email protected]>

0d7f00c6349a2157cfd39a148d8d6dabd4a9d998 authored 12 months ago
app: [macOS] send ViewEvents when the NSView is attached to a NSWindow

Instead of sending ViewEvents once at construction and once at destruction,
it's better to send ...

1527e91a026c3d8e8f1126a5e559723dc23123cd authored 12 months ago
app: merge with internal log package to remove the separate log.appID

Signed-off-by: Elias Naur <[email protected]>

fe1df00d02294faae50993369d4823d2bf082031 authored 12 months ago
app: [macOS] use NSNotificationCenter to receive app events

Notifications don't require a list of windows nor an app delegate.

Signed-off-by: Elias Naur <m...

d7528a8338a2b0f6c81063a2d16c2f716ac41168 authored 12 months ago
app: [iOS] use cgo.Handle for referring to Go windows from native code

Signed-off-by: Elias Naur <[email protected]>

9bca5bfdcf8b56b7713d63882e647ce9724a0241 authored 12 months ago
app: [API] make the zero-value Window useful and delete NewWindow

Signed-off-by: Elias Naur <[email protected]>

a880d6403d825532f453d4309eb5b966fcbd43ad authored 12 months ago
app: [macOS] add missing autoreleasepools

Their absense didn't make a practical difference so far, but we're about
to refactor the macOS e...

390242f2147bfe0a5f45899e2e8bdc4730993720 authored 12 months ago
app: [macOS] make gio_trySetPrivateCursor static, remove its prefix

While here, don't use trySetPrivateCursor for the public openHandCursor
and closedHandCursor.

S...

caba422d9c2d053e61333a41e68b32ba67d3a820 authored 12 months ago
app: [macOS] move destruction to NSView.dealloc

The dealloc method is where we're guaranteed the NSView is no longer
used anywhere.

Signed-off-...

5e5d1649299212b193ce7eacc6451dcfe1e42f3d authored 12 months ago
app: prepare Window for removal of Main and asynchronous FrameEvents

This is mostly a refactor, but there are two user-visible effects:
- Window.NextEvent may be cal...

6879a30582d7da3706ed2143f1d6e61ce811a083 authored 12 months ago
app: slim down window.go by moving editorState to separate file

Signed-off-by: Elias Naur <[email protected]>

5cda660e6eff46cb5460ba01f276214563077e77 authored 12 months ago
app: [Wayland] fix reference to most recent metric

Signed-off-by: Elias Naur <[email protected]>

8cb06ffa30dc77b122da39018dbc9299bf81061c authored 12 months ago
io/input: merge per-handler state

We're about to need per-handler state related to neither pointer nor
key input. This change merg...

4d8caba6c95f540ecd0902eafc4be55452b09139 authored 12 months ago
io/pointer: make Cancel non-zero

It's semantically problematic that a zero Kind matches Cancel, and
outweighs the downside of hav...

33f9a850c8066301b1ed30d4203aa07aa959c486 authored 12 months ago
io/input: permit FocusCmd to explicitly set the focus to any tag

If the client asks for the focus to be set to a tag, allow it. There is a
check at the end of Ro...

496fc3cc82c68dcf0567932c887b245d2a73b7e7 authored 12 months ago
io/input: fix docs for Router.Queue

The method no longer returns anything, and thus does not actually report
whether any events matc...

95ca7b5b59335dade3682557193b0b32a6866653 authored 12 months ago
all: [API] deliver key events to the first matching filter

Replace the key.Filter.Target field with a Focus field that matches only
of the specified tag ha...

ed0d5d5767fa3565710931cbb36c3a86f5bb58bb authored 12 months ago
widget: [API] change Clickable.Update to report one click at a time

Similar to how events are processed one at a time, change Clickable to
report clicks one at a ti...

0fab08bd6c7f6a0f32b9e07b78a059562741a9a5 authored 12 months ago
io/input: deliver reset events lazily

Refactor delivery of reset events to be resolved and delivered as part of
Source.Events. This is...

d25912678c6bea9c51cfd360e121c681ed245930 authored 12 months ago
io/input,widget: [API] replace per-widget Focused with Source.Focused

Widgets have themselves as tags, by convention, and so it's possible to
replace the per-widget F...

e59f91dfd09e2c2c4f1b1f9d6f72b9050a138208 authored 12 months ago
io/input: [API] execute commands immediately

Change the semantics of commands to execute immediately. In cases where
execution of a command i...

fc208248b70a4b9ec923dbbdcb2840b73453c9e5 authored 12 months ago
all: [API] replace tag parameter of Source.Event with per-filter tags

Until now, every event has had a particular target. We're about to simplify
key event delivery t...

d9a007586c2aa538776e3030a636269d38653e98 authored 12 months ago
io/input: merge event queues

Replace the per-event event queues with a single queue of events, each
marked with the target ta...

651094d6925e073720a11f7758d54f23ca0f10fd authored 12 months ago
io/input: remove pointerQueue.scratch optimization

We're about the refactor this quite subtle code, and the optimization
doesn't seem to carry its ...

3ba5fc557cb91c603bde58c8d0f351c7c4fb95ef authored 12 months ago
all: [API] deliver events one at a time to allow fine-grained event processing

Processing one event at a time allows a widget to execute commands after
the event that triggere...

88f5ac9cb9c4e270dcba469d58275c10ad160d7a authored 12 months ago
io/input: discard pointer reset event if filter doesn't match

New handlers receive reset events the first time Source.Event is called.
However, in case the fi...

f5aa745038324a238ca73da13d95bc4140c4c029 authored 12 months ago
io/input: merge pointer and key filters

Refactor the pointer and key filter unions into the handler state struct.
This is a preparation ...

67b58a60062099bb5ba743a208cb3854d9405ebc authored 12 months ago
widget: update documentation

Signed-off-by: Elias Naur <[email protected]>

5a843bee615a5f7b9fcc0660cbbe1aa9eca5c087 authored 12 months ago
widget: [API] convert Editor to return one event at a time

This commit eliminates (*widget.Editor).Events() in favor of making
(*widget.Editor).Update() re...

c645c2ec8e19ae3395c3fc168c10a8ed86dd2bd6 authored 12 months ago
widget: show soft keyboard on focus

We're about to replace the per-widget Focus methods with the client
executing FocusCmd themselve...

6dcebf205f2624978d238af7bf559c119972787b authored 12 months ago
io/input: tighten tests

Now that event delivery can be interleaved with commands, tests can be
made more precise.

Signe...

20c28ef28282e1ee73654b7256504f4088ec7f17 authored 12 months ago
all: replace InvalidateOp with InvalidateCmd command

Curiously, InvalidateCmd is probably the only command that is appropriate
to call during layout....

c515b7804e13fdab7b0cdb96f51def5f6c966730 authored 12 months ago
io/input: test Router.TextInputHint

Signed-off-by: Elias Naur <[email protected]>

77ff21605c6c72aa2fdefb2fc7ddb29da1e12012 authored 12 months ago
io/input: implement lazy event routing

This change defers event routing from the time the event is queued until
the time Events is call...

9dfada745c663a4770adf5f6a1b040f27c95eb28 authored 12 months ago
text,widget: remove dead code and fields

Signed-off-by: Elias Naur <[email protected]>

5fcfc40ab8a1269a18c5f5c8f5197b7812d5f18d authored 12 months ago
app: update documentation

Signed-off-by: Elias Naur <[email protected]>

eae39d8556e9019699360e6425c4524d3ed2d456 authored 12 months ago
io/event: [API] rename InputOp to Op

Signed-off-by: Elias Naur <[email protected]>

dbc10056f9f90850efe51cb21800fa5347720c7d authored 12 months ago
gesture: report one event at a time

Events are now delivered one at a time, and this change makes the
corresponding change to gestur...

8e209fd2eb943a15b6d1240f7dd83b756ffd5e7c authored 12 months ago
io/input: test deferred behaviour of Router

Signed-off-by: Elias Naur <[email protected]>

1fc646a8c2d4fa38b18ac761f15cfeba73ff317e authored 12 months ago
all: use a single tag per widget for event handling

With the introduction of filters, it is now possible to have one tag per
widget by convention. N...

75314fcee2be42dd1b843a07c64f10df202cd312 authored 12 months ago
io/input: implement key.Filter.Name special case for matching every key

The empty key.Filter.Name now means matching every key name. This is a
replacement for the previ...

c3f2abebcaf0d208e866ee1139c3da3e2aa925c4 authored 12 months ago
widget: [API] replace Focus methods with explicit FocusCmds

Now that widgets by convention may be focused by issuing FocusCmd
directly, remove the now redun...

ab9f42c820df21787bb29e44c9aab45c4db91d7b authored 12 months ago
widget: [API] simplify Selectable event processing

Now (*widget.Selectable).Update() returns whether the selection changed during
event processing,...

297c03925d0a85b158acf19eb17caf65c5d5ae3d authored 12 months ago
io/input: switch internal API to return one event at a time

Make the internal changes to support fine-grained event delivery.

Signed-off-by: Elias Naur <ma...

bce1dbd65440b3db9c2062b4fc772c7c84d7ffc6 authored 12 months ago
io/key: [API] replace key.InputOp with a filter

Signed-off-by: Elias Naur <[email protected]>

27ef6dd7a2a23d38b663617ac3c79f8b2c0a8fde authored 12 months ago
io/key,io/input: [API] move FocusDirection to package io/key

Signed-off-by: Elias Naur <[email protected]>

a11f35fe0deb6f74d33e8a6786bcdc8cce6c795f authored 12 months ago
io/input: [API] introduce Source, the interface between a Router and widgets

This change gets rid of the event.Queue interface by replacing it with
input.Source values. Sour...

602751794928b4c8c475e5c3622b1212a44824c5 authored 12 months ago
io/input: remove dependency on package gesture

This change is required to to replace event.Queue with a concrete
input.Source.

Signed-off-by: ...

c319f3c21450e69f5bba27e3071b349cc0cdee04 authored 12 months ago
widget: [API] re-implement Selectable.Focus in terms of commands

Signed-off-by: Elias Naur <[email protected]>

9de80749e12254ef4e54a019a1291ab6e0a51132 authored 12 months ago
widget: remove assumption that Context.Queue is an interface

We're about to make Context.Queue a concrete type, and this change
replaces code that relies on ...

99399184acdf9d6e65b98cbcb7b641429fd7a496 authored 12 months ago
app: [API] remove assumption that FrameEvent.Queue is an interface

We're about to make the Queue field of FrameEvent (and layout.Context)
a concrete type. Remove t...

dd36ec5e07d6b670e77cf9846d945674a9119758 authored 12 months ago
io/input,io/router: [API] rename package io/router to io/input

The input name better matches its purpose, in particular when we
introduce input.Source.

Signed...

d5a0d2cf60ef9f120a833dff44b31ad1b254e2d5 authored 12 months ago
io/router: [API] make SemanticID a uint, not uint64

4 billion semantic IDs should be enough for everyone.

Signed-off-by: Elias Naur <mail@eliasnaur...

60bfb9e0647af8e8465ff16c5a23f8a12d916fad authored 12 months ago
io/profile: [API] delete package

It was a design mistake to make profiling data available to programs.
Rather, profiling should e...

3648bdc02a761f9c3f30bbcc531695d1035bac09 authored 12 months ago
io/input,io/key: [API] introduce Command, replace FocusOp with FocusCmd

Modeling focus change as an operation is awkward, because focus changes
logically happen during ...

be36fc88aa249fa20060c521f7173e4e3b6867e2 authored 12 months ago
widget: [API] re-implement Editor.Focus in terms of commands

Signed-off-by: Elias Naur <[email protected]>

8334d2abb42b1a70707859aabfdcf902aee9a77b authored 12 months ago
io/key: [API] add InputHintOp for specifying the input hint for a tag

We're about to replace key.InputOp with a filter; this change separates
the input hint into its ...

12a0ad70382c9a772adc9078de4f9c813559f82e authored 12 months ago
io/key: [API] introduce FocusFilter for matching focus and editor events

Signed-off-by: Elias Naur <[email protected]>

73c3849da4629c7e2fae61f0a0ba1fe4984ce54e authored 12 months ago
app,io/system,layout: [API] move FrameEvent and Insets to package app

In the early days of Gio, FrameEvent was part of package app. It was
moved to package system to ...

cb1e605203a64f1978f43e0d824b0b895cb3296f authored 12 months ago
io/system,app: [API] move DestroyEvent, StageEvent, Stage to package app

They're only useful at the top-level event loop in combination with an
app.Window.

Signed-off-b...

d2085ab7c5b8f00f7d32bd3b5ad1060abd1eca8d authored 12 months ago
widget: remove test dependency on package app

Without the dependency, tests builds much faster.

Signed-off-by: Elias Naur <[email protected]>

d7636ea273dc6b4312742c928729b4f186df6dd4 authored 12 months ago
layout,app: [API] rename FrameEvent.Queue and Context.Queue to Source

We're about to replace the interface Queue with a concrete input.Source.
This change renames the...

4fcd96ac4b4a95563baa598a701442129d0075da authored 12 months ago
widget/material: drop test dependency on package app

Without the dependency, tests builds much faster.

Signed-off-by: Elias Naur <[email protected]>

be86450ea524489563f04a3e3c2b203a25f0126b authored 12 months ago
io/input,io/clipboard: [API] replace ReadOp with command

Signed-off-by: Elias Naur <[email protected]>

676b670119fa6b134e0650df36fbf6ae9a726993 authored 12 months ago
io/input,io/clipboard: [API] replace WriteOp with command

Signed-off-by: Elias Naur <[email protected]>

d51aea553f1e37d2b0b980515e777d3e4ab1ee55 authored 12 months ago
io/input,io/key: [API] replace SnippetOp with command

Signed-off-by: Elias Naur <[email protected]>

eed93aaffef68a543e3687985a1fe711dd5f2a59 authored 12 months ago
io/input,io/pointer: [API] make pointer grab a command

Signed-off-by: Elias Naur <[email protected]>

1bcbaa8137f6128cc77b44d94c04d2c45e11afad authored 12 months ago
io/input,io/transfer: [API] replace OfferOp with command

Also delete two tests that are no longer relevant.

Signed-off-by: Elias Naur <[email protected]>

a3c539b3c2f7e417c67a8fc9b12c3fa1e2c2e203 authored 12 months ago
widget: [API] re-implement Clickable.Focus with a command

Signed-off-by: Elias Naur <[email protected]>

627e028d3cf3bdceecb88cb6873e36d503f483f8 authored 12 months ago
io/input,io/key: [API] replace SelectionOp with command

Signed-off-by: Elias Naur <[email protected]>

813d83664171f8fea593bbff3b1c2981172b8935 authored 12 months ago
io: [API] introduce event filters; convert pointer input to use them

Instead of having to supply the predicates for event filtering at the
time of layout, the new Fi...

ef8171b971fb35dbcf28a706b05ab1f1e81f99f4 authored 12 months ago
io/key: delete Event.String

The String method doesn't add anything in addition to the default Go
formatting of the type.

Si...

e19a2488153371882c87fa19fdb994ab724c6dc7 authored 12 months ago
io/input,io/key: [API] replace SoftKeyboardOp with a command

Signed-off-by: Elias Naur <[email protected]>

5dd41f74d379972554b43135d1a5381911af639d authored 12 months ago
material: fix documentation of using buttons

Signed-off-by: James Stanley <[email protected]>

7cfd226b5797ffe4782bf3ccfd81999d409b7672 authored 12 months ago
internal/gl: fix startup crash on openbsd from libGLESv2 naming

Signed-off-by: Danny Wilkins <[email protected]>

05d28ad76a4946b4e0d0cb0ceb34c9337fd81724 authored 12 months ago
material: fix documentation of changing theme colours

Signed-off-by: James Stanley <[email protected]>

adba14c06222816c459ddcb2ef5f98f1c07847b6 authored about 1 year ago
material: fix documentation of creating an icon

Signed-off-by: James Stanley <[email protected]>

40706d3782e63705b03f874c2710788925325990 authored about 1 year ago
app: fix automatic window decoration action processing

This commit adapts the use of the automatic window decorations to the
event processing changes i...

ab021c4566b50e23f411a48be41f896358fefd7b authored about 1 year ago
gpu: rename resourceCache to textureCache and use concrete key

The only remaining use of the cache is mapping handles to textures.
Using a concrete type for th...

fe2a164d30c4dc13c63f27934877a91803b600d3 authored about 1 year ago
gpu: remove unused cache parameters

Signed-off-by: Dominik Honnef <[email protected]>

4eca2c7d269eeea12497bdef6b0e3a266fefb08a authored about 1 year ago
widget: don't refer to non-existent method Clickable.Clicks

Signed-off-by: Dominik Honnef <[email protected]>

7ea432fa130c2d3a754855736ccd72497ff6533b authored about 1 year ago
gesture: adjust ClickKind.String for ClickType -> ClickKind rename

Signed-off-by: Dominik Honnef <[email protected]>

e666ef35caa569c355b92b156f55c3a9201823c4 authored about 1 year ago
widget/material: allow changing height & radius of progressbar

Signed-off-by: sewn <[email protected]>

a8ec3968d9a942ee8daf2aa8cf8703a80ddfaddc authored about 1 year ago
app: [Windows] tolerate gpu.ErrDeviceLost from Refresh

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

2128f7adea9bc0b77ea943db294df6543158ee7e authored about 1 year ago
flake.nix: upgrade to nixpkgs 23.11; upgrade to JDK 17

Apparently, newer Android SDKs now support Java versions newer than 8.
Finally.

Signed-off-by: ...

a454d5fa3812f5efa3f7856c0e5ac3fba2406d29 authored about 1 year ago
app: don't route internal wakeup events to the Router

Signed-off-by: Elias Naur <[email protected]>

7d1ea0226727224870dd772c53a4401cb69e05a1 authored about 1 year ago
app: [Windows] fix restore size when leaving fullscreen

Signed-off-by: Elias Naur <[email protected]>

f7aa4b5c81871d92b33f7e9691abadfca9082bd5 authored about 1 year ago
widget/material: fix list scrollbar display

This commit fixes a visual misalignment in scrollbars resulting from subtle differences
in the s...

52987e53f60dc62fa26806b336f6850265d1878a authored about 1 year ago
widget: [API] rename scrollbar update method to update

This matches the convention of other state update methods. While here, remove useless
dimensions...

e32417353ad38e26d708790b0640aa5cf8078e5e authored about 1 year ago
widget/material: add missing Update calls

Without the updates, the switch and radiobutton would use stale state
for layout.

Signed-off-by...

c458eb30f02f9bc1f126551e057d38d04b2b509f authored about 1 year ago
io/pointer: fix godoc reference to renamed type

Signed-off-by: Chris Waldon <[email protected]>

d96c954769eb11d4987cfaec871b8f34f7dcadfd authored about 1 year ago
layout: add Background

It's relatively common to create a widget and then add a background to
it. Using layout.Stack ca...

f39245df99bfef0d4eacc03cb3ea06904363cfcd authored about 1 year ago
app: [macOS] activate app on ActionRaise if necessary

Calling window.Perform(system.ActionRaise) does not show the window on
the top if the app is cur...

8097df99301a63267ea57ba52f866a71602e622d authored about 1 year ago