Matthias goal: a plan for gtk4 - when, what, how

Benjamin: needs some selling feature

currently: slower, uses more memory

slower because it does many things automatically (hover)

unfinished tasks:

  • - dnd - turn into gestures, drop signals, gtkselection - popovers

Looking over subsystems

GdkPaintable - generic drawing abstraction

GtkImage vs GtkPicture - image is an icon, picture is a main view for e.g. gnome photos

A story to tell: use GtkPicture

GtkVideo: picture + media controls

for short clips, vines, recordings - not meant for totem

GtkMediaStream, GtkMediaFile uses gstreamer or ffmpeg

gstreamer does sound, ffmpeg doesn't

Benjamin has a branch that can do dmabuf/gl transfers the right way

gstreamer backend can work across win32 and osx

need maybe a native osx or win32 mediafile implementation

need a webcam backend that uses pipewire

open question: how does gstreamer and gtk talk to each other

open tasks:

  • figure out ui for media controls
  • webcam mediastream

fun blog post: media stuff

rendering model: we cache render nodes now, and diff them, and queue draw is just discarding the cached node

no more clipping, widgets can draw anywhere

gsk needs 3d transforms. timms branch needs some cleanup, but should be mergable

what needs to happen to make the branch mergable: add a simple 3rd transition to revealer and stack, and make it work with all backends

to be done in gsk: share code across backends (texture cache, tree -> list)

have per-display gl contexts

work to be done:

  • bring vulkan and gl drivers up to par
  • vulkan could be used on win32 and osx (with shim layers)
  • could get rid of the draw context / renderer split
  • have a 'canvas' api

(event controller discussion)

Shortcuts - Benjamin has a branch that has a shortcuts controller

There are triggers and actions

shortcuts branch depends on listmodels (which are merged), but benjamin wants to have a listview based on them, that is not quite done

fun blog post: list models

layout managers: mostly a preparatory step for introducing constraints

looking at child properties:

Hackfests/GTK2019/NotesDay1 (last edited 2019-02-04 17:49:52 by MatthiasClasen)