Elias Naur
ca24026ffd
ui/widget: preserve image aspect in Image.Layout
...
Signed-off-by: Elias Naur <mail@eliasnaur.com >
2019-07-09 14:39:08 +02:00
Elias Naur
f3164c9fce
apps/gophers: update to layout objects with ui.Value measurements
...
Signed-off-by: Elias Naur <mail@eliasnaur.com >
2019-07-09 11:33:28 +02:00
Elias Naur
99be31bc26
ui/layout: convert Sized and Insets to use ui.Value
...
Layout objects are usually ephemereal, but when saved and re-used
between frames their measurements are not updated with varying pixel
density and font scaling.
Go back to storing unconverted ui.Values instead of raw pixels,
and convert them at each use.
Signed-off-by: Elias Naur <mail@eliasnaur.com >
2019-07-09 11:28:41 +02:00
Elias Naur
8a34469211
Revert "ui/app: (iOS) treat the \n character as a return key chord"
...
It's not the way of the soft keyboards.
This reverts commit a0c04cb3b2 .
2019-07-08 19:04:57 +02:00
Elias Naur
da095a3e5d
apps/go.mod: update gio version
...
Signed-off-by: Elias Naur <mail@eliasnaur.com >
2019-07-08 16:18:36 +02:00
Elias Naur
f7ea448256
ui/app: (android) fix length of C string copy
...
The data dir string is returned to Go as a byte array of the UTF-8
encoded string, but it is not NUL terminated.
Signed-off-by: Elias Naur <mail@eliasnaur.com >
2019-07-08 16:15:45 +02:00
Elias Naur
5f15f4c769
apps: remove use of app.Window.IsAlive
...
Signed-off-by: Elias Naur <mail@eliasnaur.com >
2019-07-08 15:52:07 +02:00
Elias Naur
b494b3c8c0
ui/app: remove IsAlive
...
IsAlive races with the StageDead event: if the client checks IsAlive
after the stage is updated to StageDead but before having received
the StageDead it will exit the event loop, blocking the StageDead
to ever arrive.
Remove IsAlive and let the client rely only on the StageDead to exit
its event loop.
Signed-off-by: Elias Naur <mail@eliasnaur.com >
2019-07-08 15:46:48 +02:00
Elias Naur
51905c0aad
ui/text: ignore all newlines in single line editors
...
Signed-off-by: Elias Naur <mail@eliasnaur.com >
2019-07-08 14:59:32 +02:00
Elias Naur
84cd3fcdca
ui/text: handle stop and scroll immediately
...
In case an event is returned, don't aggregate state changes in Next.
Signed-off-by: Elias Naur <mail@eliasnaur.com >
2019-07-08 00:07:51 +02:00
Elias Naur
2292fd0c63
ui/app: implement window insets for iOS
...
Signed-off-by: Elias Naur <mail@eliasnaur.com >
2019-07-07 23:50:16 +02:00
Elias Naur
c884b7d4f0
ui/app: introduce DrawEvent.Insets and add Android implementation
...
Signed-off-by: Elias Naur <mail@eliasnaur.com >
2019-07-07 23:30:38 +02:00
Elias Naur
491d81e0c8
cmd/gio: set windowSoftInputMode=adjustResize in AndroidManifest.xml
...
Signed-off-by: Elias Naur <mail@eliasnaur.com >
2019-07-07 21:03:25 +02:00
Elias Naur
3897832842
ui/app: use log level info for stderr
...
It's not given that output to stderr is caused by an error
condition.
Signed-off-by: Elias Naur <mail@eliasnaur.com >
2019-07-07 19:32:26 +02:00
Elias Naur
ab13a2ee73
ui/text: add Editor.Focus method
...
Signed-off-by: Elias Naur <mail@eliasnaur.com >
2019-07-07 18:23:50 +02:00
Elias Naur
a0c04cb3b2
ui/app: (iOS) treat the \n character as a return key chord
...
Signed-off-by: Elias Naur <mail@eliasnaur.com >
2019-07-07 17:54:50 +02:00
Elias Naur
47c6ea2dd2
ui/app: (iOS) redirect standard Go logger to NSLog
...
Signed-off-by: Elias Naur <mail@eliasnaur.com >
2019-07-07 17:43:40 +02:00
Elias Naur
5f42e2e804
ui/app: (android) set close-on-exit flag on dup'ed log file descriptors
...
The file descriptors are probably overwritten on exec anyway, but at
least our intent is clear.
Signed-off-by: Elias Naur <mail@eliasnaur.com >
2019-07-07 16:47:38 +02:00
Elias Naur
1a417d353c
ui/app: fix a few C signatures and a comment typo
...
Signed-off-by: Elias Naur <mail@eliasnaur.com >
2019-07-07 16:33:11 +02:00
Elias Naur
f110c26e3f
ui/input: hide soft keyboard when focus is lost
...
Signed-off-by: Elias Naur <mail@eliasnaur.com >
2019-07-07 15:52:09 +02:00
Elias Naur
31418eefbe
ui/key: rename TextInputClosed to TextInputClose
...
Signed-off-by: Elias Naur <mail@eliasnaur.com >
2019-07-07 15:52:09 +02:00
Elias Naur
5b7a7334c8
README.md: update for -buildmode=exe default
...
Also, move the exe section to the beginning of the mobile sections,
leaving -buildmode=archive second.
Signed-off-by: Elias Naur <mail@eliasnaur.com >
2019-07-07 11:43:32 +02:00
Elias Naur
2c5b7496d2
ui/text: apply correct material for cursor
...
Signed-off-by: Elias Naur <mail@eliasnaur.com >
2019-07-07 00:48:00 +02:00
Elias Naur
f56e082cc7
ui/app: introduce DataDir for application-specific data files
...
Signed-off-by: Elias Naur <mail@eliasnaur.com >
2019-07-07 00:39:13 +02:00
Elias Naur
48786bbd05
README.md: move the build line first in webassembly instructions
...
Signed-off-by: Elias Naur <mail@eliasnaur.com >
2019-07-07 00:11:38 +02:00
Elias Naur
2d89a914e9
ui/app: tweak comment
...
Signed-off-by: Elias Naur <mail@eliasnaur.com >
2019-07-06 16:09:01 +02:00
Elias Naur
8e46bea6dc
cmd/gio: use package name for app name in -buildmode=exe
...
Signed-off-by: Elias Naur <mail@eliasnaur.com >
2019-07-06 15:30:39 +02:00
Elias Naur
07d99ab182
cmd/gio: set default buildmode to "exe"
...
Signed-off-by: Elias Naur <mail@eliasnaur.com >
2019-07-06 15:16:59 +02:00
Elias Naur
6440fc35b7
apps: update to renamed ColorOp.Color field
...
Signed-off-by: Elias Naur <mail@eliasnaur.com >
2019-07-05 17:17:02 +02:00
Elias Naur
38ec6a8831
ui/draw: rename ColorOp.Col to Color
2019-07-05 17:14:57 +02:00
Elias Naur
0f576cf625
ui/text: use default colors to guard against empty materials
...
Signed-off-by: Elias Naur <mail@eliasnaur.com >
2019-07-05 17:11:17 +02:00
Elias Naur
e3629cc0fb
apps: update to new material api
...
Signed-off-by: Elias Naur <mail@eliasnaur.com >
2019-07-05 17:01:12 +02:00
Elias Naur
86bc3e612d
ui/text: use BlockOp as materials
...
Before this change, clients were expected to set up the current
material (color or image) before laying out Labels and Editors.
This was done to avoid garbage from a hypothetical material
interface covering both colors and images.
However, some widgets need more than one material: the Editor had
HintImage for the hint text material.
This change implements generalized materials through blocks:
anywhere a material is expected, a ui.BlockOp is is assumed to
contain the operation(s) needed for setting the desired material.
This way we avoid allocations (interfaces) and keep the
abstraction over material types.
Signed-off-by: Elias Naur <mail@eliasnaur.com >
2019-07-05 16:52:13 +02:00
Elias Naur
30a558d10d
ui/app: fix race condition between Window.Redraw and Draw
...
A Window.Redraw called after the client has completed building a
frame and before Window.Draw resets the redraw flag is effectively
ignored. Move the flag reset earlier to just before the client is
asked to build the frame, to ensure that no state updates are lost.
Tighten and simplify the locking while we're here.
Signed-off-by: Elias Naur <mail@eliasnaur.com >
2019-07-04 16:31:48 +02:00
Elias Naur
f1dffa155c
ui/text: add ChangeEvent and rename Submit to SubmitEvent
...
Signed-off-by: Elias Naur <mail@eliasnaur.com >
2019-07-04 15:06:50 +02:00
Elias Naur
252514af9d
all: update dependencies
...
Signed-off-by: Elias Naur <mail@eliasnaur.com >
2019-07-03 20:26:19 +02:00
Elias Naur
475bccb722
ui: add checks for unmatched Ops.Begin/End
...
Signed-off-by: Elias Naur <mail@eliasnaur.com >
2019-07-02 20:12:06 +02:00
Elias Naur
322a95adee
apps/hello: update to latest gio api
...
Signed-off-by: Elias Naur <mail@eliasnaur.com >
2019-07-02 20:00:28 +02:00
Elias Naur
e862761e17
ui/input: keep default focus on earliest focusable
...
Signed-off-by: Elias Naur <mail@eliasnaur.com >
2019-07-02 19:36:45 +02:00
Elias Naur
6fdab9dba6
apps/gophers: update to latest gio api
...
Signed-off-by: Elias Naur <mail@eliasnaur.com >
2019-07-02 14:58:00 +02:00
Elias Naur
33fc35f58d
ui/draw: switch to color.RGBA for colors
...
Signed-off-by: Elias Naur <mail@eliasnaur.com >
2019-07-02 14:56:48 +02:00
Elias Naur
683df6345b
ui/layout: fix Flex spacing
...
Signed-off-by: Elias Naur <mail@eliasnaur.com >
2019-07-01 19:22:06 +02:00
Elias Naur
91de9acc4a
cmd/assets: delete
...
It is unused.
Signed-off-by: Elias Naur <mail@eliasnaur.com >
2019-07-01 18:19:02 +02:00
Elias Naur
0316a27a45
apps/gophers: add editor hint
...
Signed-off-by: Elias Naur <mail@eliasnaur.com >
2019-07-01 13:38:02 +02:00
Elias Naur
d720fa6233
ui/text: add Hint and HintImage to Editor
...
Signed-off-by: Elias Naur <mail@eliasnaur.com >
2019-07-01 13:36:54 +02:00
Elias Naur
0546683720
ui/text: add LayoutOptions
...
Signed-off-by: Elias Naur <mail@eliasnaur.com >
2019-06-30 23:58:05 +02:00
Elias Naur
28f53d8708
ui/text: add Label.MaxLines
...
Signed-off-by: Elias Naur <mail@eliasnaur.com >
2019-06-30 23:51:11 +02:00
Elias Naur
3092a72089
apps/gophers: update to latest gioui.org/ui
...
Signed-off-by: Elias Naur <mail@eliasnaur.com >
2019-06-27 12:47:33 +02:00
Elias Naur
ef9384ceee
ui/layout: allow one-line initialization of Flex and Stack
...
Returning itself from the Init methods allows the client to
initialize the layout instance on one line.
Signed-off-by: Elias Naur <mail@eliasnaur.com >
2019-06-27 12:44:15 +02:00
Elias Naur
bf96bb8bdd
cmd: update to latest gioui.org/ui version
...
Signed-off-by: Elias Naur <mail@eliasnaur.com >
2019-06-22 17:38:25 +02:00