M subprojects/d2tk/.builds/alpine-latest.yml => subprojects/d2tk/.builds/alpine-latest.yml +54 -87
@@ 1,99 1,66 @@
# SPDX-FileCopyrightText: Hanspeter Portner <dev@open-music-kontrollers.ch>
# SPDX-License-Identifier: CC0-1.0
-
---
-
image: alpine/latest
-
packages:
- - clang15-analyzer
- - llvm15
- - reuse
- - meson
- - git-subtree
- - hut
- - jq
- - valgrind
-
- - cairo-dev
- - libinput-dev
- - eudev-dev
- - libevdev-dev
- - glu-dev
- - glfw-dev
- - libvterm-dev
-
+- meson
+- clang17-analyzer
+- llvm17
+- valgrind
+- freetype-dev
+- pixman-dev
+- glu-dev
+- libvterm-dev
+- fontconfig-dev
+- libx11-dev
+- libxext-dev
+- git-subtree
+- reuse
+- hut
+- jq
environment:
+ CI_SCAN_BUILD_OPTS: -disable-checker security.insecureAPI.vfork -disable-checker
+ unix.Vfork --exclude nanovg --exclude pugl
+ CI_SETUP_OPTS: -Duse-fontconfig=disabled
project: d2tk
- CI_SCAN_BUILD_OPTS: -disable-checker security.insecureAPI.vfork -disable-checker unix.Vfork --exclude nanovg --exclude pugl
-
secrets:
- - 0545580c-42ac-4700-b322-4e9df924eb07 # runner-ssh
- - 5fe806cd-3af4-4588-9898-8115d9262144 # hut-config
- - d6d10b2a-542a-4b45-b1be-6ef30a8ab558 # git-config
-
+- 58ccce1e-a8ad-4701-8bd1-1a498ded71c8
+- a45b6ef3-6ecd-4992-9b6b-a2ca284322cb
+- d6d10b2a-542a-4b45-b1be-6ef30a8ab558
+- 3de1773e-3503-46f5-8ab4-5212026517f4
+- 8c1363a3-86c2-46e5-9b52-79db433fa884
sources:
- - https://git.open-music-kontrollers.ch/~hp/ci
-
+- https://git.open-music-kontrollers.ch/~hp/ci
tasks:
- - gcc: |
- . ~/ci/activate
-
- ci-meson gcc setup \
- -Dbuild-examples=true \
- -Duse-backend-cairo=enabled \
- -Duse-backend-nanovg=enabled \
- -Duse-frontend-fbdev=enabled \
- -Duse-frontend-pugl=enabled \
- -Duse-frontend-glfw=enabled \
- -Duse-fontconfig=disabled \
- -Duse-evdev=enabled
- ci-meson gcc build
- ci-meson gcc test
- ci-meson gcc memcheck
-
- - clang: |
- . ~/ci/activate
-
- ci-meson clang setup \
- -Dbuild-examples=true \
- -Duse-backend-cairo=enabled \
- -Duse-backend-nanovg=enabled \
- -Duse-frontend-fbdev=enabled \
- -Duse-frontend-pugl=enabled \
- -Duse-frontend-glfw=enabled \
- -Duse-fontconfig=disabled \
- -Duse-evdev=enabled
- ci-meson clang build
- ci-meson clang test
- ci-meson clang memcheck
-
- - analyzer: |
- . ~/ci/activate
-
- ci-meson analyzer setup \
- -Dbuild-examples=true \
- -Duse-backend-cairo=enabled \
- -Duse-backend-nanovg=enabled \
- -Duse-frontend-fbdev=enabled \
- -Duse-frontend-pugl=enabled \
- -Duse-frontend-glfw=enabled \
- -Duse-fontconfig=disabled \
- -Duse-evdev=enabled
- ci-meson analyzer build
- ci-meson analyzer test
-
- - deploy: |
- . ~/ci/activate
-
- if ! ci-isrelease; then
- complete-build
- fi
-
- ci-subtreemerge
-
+- gcc: |-
+ . ~/ci/activate
+ ci-meson gcc setup
+ ci-meson gcc build
+ ci-meson gcc test
+- clang: |-
+ . ~/ci/activate
+ ci-meson clang setup
+ ci-meson clang build
+ ci-meson clang test
+- analyzer: |-
+ . ~/ci/activate
+ ci-meson analyzer setup
+ ci-meson analyzer build
+ ci-meson analyzer test
+- merge: |-
+ . ~/ci/activate
+ if ! ci-isrelease; then
+ complete-build
+ fi
+ ci-subtreemerge
+- sign: |-
+ . ~/ci/activate
+ if ! ci-istag; then
+ complete-build
+ fi
+ ci-archivesign
triggers:
- - action: email
- condition: failure
- to: "<dev@open-music-kontrollers.ch>"
+- action: email
+ condition: failure
+ to: <dev@open-music-kontrollers.ch>
...
M subprojects/d2tk/README.md => subprojects/d2tk/README.md +6 -0
@@ 84,3 84,9 @@ and on-demand rendered sprites.
![Screenshot 7](screenshots/screenshot_7.png)
![Screenshot 8](screenshots/screenshot_8.png)
+
+### Issues/Patches
+
+Please report issues to [https://todo.open-music-kontrollers.ch/~hp/issues](https://todo.open-music-kontrollers.ch/~hp/issues)
+
+Please submit patches to [https://lists.open-music-kontrollers.ch/~hp/patches](https://lists.open-music-kontrollers.ch/~hp/patches)
M subprojects/d2tk/d2tk/config.h.in => subprojects/d2tk/d2tk/config.h.in +1 -0
@@ 6,6 6,7 @@
#define D2TK_EVDEV @D2TK_EVDEV@
#define D2TK_INPUT_1_15 @D2TK_INPUT_1_15@
#define D2TK_INPUT_1_19 @D2TK_INPUT_1_19@
+#define D2TK_INPUT_1_26 @D2TK_INPUT_1_26@
#define D2TK_FONTCONFIG @D2TK_FONTCONFIG@
#define D2TK_DEBUG @D2TK_DEBUG@
#define D2TK_GLES_VERSION @D2TK_GLES_VERSION@
M subprojects/d2tk/example/example.c => subprojects/d2tk/example/example.c +1 -1
@@ 56,7 56,7 @@ typedef enum _bar_t {
BAR_MAX
} bar_t;
-static int32_t bar = BAR_LINEEDIT;
+static int32_t bar = BAR_PANE;
static const char *bar_lbl [BAR_MAX] = {
[BAR_MIX] = "Mix of many",
[BAR_SPINNER] = "Spinner",
M subprojects/d2tk/meson.build => subprojects/d2tk/meson.build +5 -2
@@ 179,9 179,13 @@ endif
conf_data.set('D2TK_INPUT_1_15', 0)
conf_data.set('D2TK_INPUT_1_19', 0)
if input_dep.found()
+ if input_dep.version().version_compare('>=1.26.0')
+ conf_data.set('D2TK_INPUT_1_26', 1)
+ endif
+
if input_dep.version().version_compare('>=1.19.0')
conf_data.set('D2TK_INPUT_1_19', 1)
- endif
+ endif
if input_dep.version().version_compare('>=1.15.0')
conf_data.set('D2TK_INPUT_1_15', 1)
@@ 256,7 260,6 @@ test_base_srcs = [
c_args = [
'-fvisibility=hidden',
- '-ffast-math',
'-Wno-gnu-zero-variadic-macro-arguments',
'-Wno-unknown-attributes',
'-Wno-ignored-attributes',
M subprojects/d2tk/meson_options.txt => subprojects/d2tk/meson_options.txt +1 -1
@@ 55,4 55,4 @@ option('use-fontconfig',
value : 'disabled',
yield : true)
-option('version', type : 'string', value : '0.5.1')
+option('version', type : 'string', value : '0.5.27')
M subprojects/d2tk/nanovg/src/stb_image.h => subprojects/d2tk/nanovg/src/stb_image.h +1 -1
@@ 4395,7 4395,7 @@ static int stbi__parse_png_file(stbi__png *z, int scan, int req_comp)
if (!(s->img_n & 1)) return stbi__err("tRNS with alpha","Corrupt PNG");
if (c.length != (stbi__uint32) s->img_n*2) return stbi__err("bad tRNS len","Corrupt PNG");
has_trans = 1;
- for (k=0; k < s->img_n; ++k)
+ for (k=0; k < (s->img_n & sizeof(tc)); ++k)
tc[k] = (stbi_uc) (stbi__get16be(s) & 255) * stbi__depth_scale_table[depth]; // non 8-bit images will be larger
}
break;
M subprojects/d2tk/src/base.c => subprojects/d2tk/src/base.c +28 -32
@@ 677,13 677,9 @@ d2tk_base_is_active_hot(d2tk_base_t *base, d2tk_id_t id,
}
#define nocol 0x0
-#define light_grey 0x7f7f7fff
-#define dark_grey 0x3f3f3fff
-#define darker_grey 0x222222ff
-#define black 0x000000ff
-#define white 0xffffffff
-#define light_orange 0xffcf00ff
-#define dark_orange 0xcf9f00ff
+#define col1 0x020202ff
+#define col2 0x026cfdff
+#define col3 0xfdfdfdff
#define FONT_SANS_BOLD "FiraSans:bold"
@@ 695,36 691,36 @@ d2tk_base_get_default_style(void)
.border_width = 1,
.padding = 1,
.rounding = 4,
- .bg_color = darker_grey,
+ .bg_color = col1,
.fill_color = {
- [D2TK_TRIPLE_NONE] = dark_grey,
- [D2TK_TRIPLE_HOT] = light_grey,
- [D2TK_TRIPLE_ACTIVE] = dark_orange,
- [D2TK_TRIPLE_ACTIVE_HOT] = light_orange,
- [D2TK_TRIPLE_FOCUS] = dark_grey,
- [D2TK_TRIPLE_HOT_FOCUS] = light_grey,
- [D2TK_TRIPLE_ACTIVE_FOCUS] = dark_orange,
- [D2TK_TRIPLE_ACTIVE_HOT_FOCUS] = light_orange,
+ [D2TK_TRIPLE_NONE] = col3,
+ [D2TK_TRIPLE_HOT] = col3,
+ [D2TK_TRIPLE_ACTIVE] = col2,
+ [D2TK_TRIPLE_ACTIVE_HOT] = col2,
+ [D2TK_TRIPLE_FOCUS] = col3,
+ [D2TK_TRIPLE_HOT_FOCUS] = col3,
+ [D2TK_TRIPLE_ACTIVE_FOCUS] = col2,
+ [D2TK_TRIPLE_ACTIVE_HOT_FOCUS] = col2,
},
.stroke_color = {
- [D2TK_TRIPLE_NONE] = black,
- [D2TK_TRIPLE_HOT] = black,
- [D2TK_TRIPLE_ACTIVE] = black,
- [D2TK_TRIPLE_ACTIVE_HOT] = black,
- [D2TK_TRIPLE_FOCUS] = white,
- [D2TK_TRIPLE_HOT_FOCUS] = white,
- [D2TK_TRIPLE_ACTIVE_FOCUS] = white,
- [D2TK_TRIPLE_ACTIVE_HOT_FOCUS] = white,
+ [D2TK_TRIPLE_NONE] = col1,
+ [D2TK_TRIPLE_HOT] = col2,
+ [D2TK_TRIPLE_ACTIVE] = col1,
+ [D2TK_TRIPLE_ACTIVE_HOT] = col3,
+ [D2TK_TRIPLE_FOCUS] = col1,
+ [D2TK_TRIPLE_HOT_FOCUS] = col2,
+ [D2TK_TRIPLE_ACTIVE_FOCUS] = col1,
+ [D2TK_TRIPLE_ACTIVE_HOT_FOCUS] = col3,
},
.text_stroke_color = {
- [D2TK_TRIPLE_NONE] = white,
- [D2TK_TRIPLE_HOT] = light_orange,
- [D2TK_TRIPLE_ACTIVE] = white,
- [D2TK_TRIPLE_ACTIVE_HOT] = dark_grey,
- [D2TK_TRIPLE_FOCUS] = white,
- [D2TK_TRIPLE_HOT_FOCUS] = light_orange,
- [D2TK_TRIPLE_ACTIVE_FOCUS] = white,
- [D2TK_TRIPLE_ACTIVE_HOT_FOCUS] = dark_grey
+ [D2TK_TRIPLE_NONE] = col1,
+ [D2TK_TRIPLE_HOT] = col2,
+ [D2TK_TRIPLE_ACTIVE] = col1,
+ [D2TK_TRIPLE_ACTIVE_HOT] = col3,
+ [D2TK_TRIPLE_FOCUS] = col1,
+ [D2TK_TRIPLE_HOT_FOCUS] = col2,
+ [D2TK_TRIPLE_ACTIVE_FOCUS] = col1,
+ [D2TK_TRIPLE_ACTIVE_HOT_FOCUS] = col3
},
.text_fill_color = {
[D2TK_TRIPLE_NONE] = nocol,
M subprojects/d2tk/src/frontend_fbdev.c => subprojects/d2tk/src/frontend_fbdev.c +3 -0
@@ 603,6 603,9 @@ d2tk_frontend_step(d2tk_frontend_t *fbdev)
#if D2TK_INPUT_1_15
case LIBINPUT_EVENT_TABLET_PAD_KEY:
#endif
+#if D2TK_INPUT_1_26
+ case LIBINPUT_EVENT_TABLET_PAD_DIAL:
+#endif
{
struct libinput_event_tablet_pad *evtp =
libinput_event_get_tablet_pad_event(ev);