diff --git a/build-aux/dev.geopjr.Tuba.Stack.json b/build-aux/dev.geopjr.Tuba.Stack.json new file mode 100644 index 000000000..da5bc7252 --- /dev/null +++ b/build-aux/dev.geopjr.Tuba.Stack.json @@ -0,0 +1,115 @@ +{ + "app-id": "dev.geopjr.Tuba", + "runtime": "org.gnome.Platform", + "runtime-version": "master", + "sdk": "org.gnome.Sdk", + "command": "dev.geopjr.Tuba", + "finish-args": [ + "--device=dri", + "--share=ipc", + "--share=network", + "--socket=fallback-x11", + "--socket=wayland", + "--socket=pulseaudio" + ], + "cleanup": [ + "/include", + "/lib/pkgconfig", + "/man", + "/share/doc", + "/share/gtk-doc", + "/share/man", + "/share/pkgconfig", + "/share/vala", + "*.la", + "*.a" + ], + "modules": [ + { + "name": "libsass", + "buildsystem": "meson", + "cleanup": [ + "*" + ], + "sources": [ + { + "type": "git", + "url": "https://github.com/lazka/libsass.git", + "commit": "302397c0c8ae2d7ab02f45ea461c2c3d768f248e" + } + ] + }, + { + "name": "sassc", + "buildsystem": "meson", + "cleanup": [ + "*" + ], + "sources": [ + { + "type": "git", + "url": "https://github.com/lazka/sassc.git", + "commit": "82803377c33247265d779af034eceb5949e78354" + } + ] + }, + { + "name": "gtk", + "buildsystem": "meson", + "config-opts": [ + "-Dbuildtype=release", + "-Dprint-cups=disabled", + "-Dbuild-demos=false", + "-Dbuild-testsuite=false", + "-Dbuild-examples=false", + "-Dbuild-tests=false" + ], + "cleanup": [ + "/bin/gtk*" + ], + "sources": [ + { + "type": "git", + "url": "https://gitlab.gnome.org/GNOME/gtk.git", + "tag": "4.17.2" + }, + { + "type": "patch", + "path": "listview_lower_min_recycler.patch" + } + ] + }, + { + "name": "libspelling", + "buildsystem": "meson", + "config-opts": [ + "-Ddocs=false" + ], + "sources": [ + { + "type": "git", + "url": "https://gitlab.gnome.org/GNOME/libspelling.git", + "tag": "0.4.5" + } + ] + }, + { + "name": "tuba", + "builddir": true, + "buildsystem": "meson", + "config-opts": [ + "-Ddevel=true", + "--libdir=lib" + ], + "sources": [ + { + "type": "dir", + "path": "../" + } + ] + } + ], + "build-options": { + "env": {} + } +} diff --git a/build-aux/listview_lower_min_recycler.patch b/build-aux/listview_lower_min_recycler.patch new file mode 100644 index 000000000..983ebfd35 --- /dev/null +++ b/build-aux/listview_lower_min_recycler.patch @@ -0,0 +1,14 @@ +diff --git a/gtk/gtklistview.c b/gtk/gtklistview.c +--- gtk/gtklistview.c ++++ gtk/gtklistview.c +@@ -33,9 +33,9 @@ + /* Maximum number of list items created by the listview. + * For debugging, you can set this to G_MAXUINT to ensure + * there's always a list item for every row. + */ +-#define GTK_LIST_VIEW_MAX_LIST_ITEMS 200 ++#define GTK_LIST_VIEW_MAX_LIST_ITEMS 20 + + /* Extra items to keep above + below every tracker */ + #define GTK_LIST_VIEW_EXTRA_ITEMS 2 + diff --git a/data/style.css b/data/style.css index 5246e941b..5fd229441 100644 --- a/data/style.css +++ b/data/style.css @@ -208,8 +208,7 @@ headerbar.flat.no-title .title { } .small .ttl-profile-cover>.content { - border-bottom-left-radius: 0px; - border-bottom-right-radius: 0px; + border-radius: 0px; } .ttl-box-no-shadow>revealer>box { @@ -523,67 +522,70 @@ video > overlay > revealer > controls, .audio-controls { box-shadow: none; } -/* .ttl-view .content row:first-child { */ -.ttl-view .fake-content row:first-child { +.ttl-view .contentbase row:first-child { +/* .ttl-view .fake-content row:first-child { */ margin-top: 0px; } -/* .ttl-view .content row:last-child { */ -.ttl-view .fake-content row:last-child { +.ttl-view .contentbase row:last-child { +/* .ttl-view .fake-content row:last-child { */ margin-bottom: 0px; } -/* .ttl-view:not(.large-view) .content .card { */ -.ttl-view:not(.large-view) .fake-content .card, -.ttl-view:not(.large-view) .fake-content .toggle-group-17 { +.ttl-view:not(.large-view) .contentbase .card, +.ttl-view:not(.large-view) .contentbase .toggle-group-17 { +/* .ttl-view:not(.large-view) .fake-content .card, +.ttl-view:not(.large-view) .fake-content .toggle-group-17 { */ border-left: none; border-right: none; border-radius: 0px; } -/* .ttl-view:not(.large-view) .content { */ -.ttl-view:not(.large-view) .fake-content { +.ttl-view:not(.large-view) .contentbase { +/* .ttl-view:not(.large-view) .fake-content { */ padding: 0px; } -/* .ttl-view .content row:not(.ttl-post) { */ -.ttl-view .fake-content row:not(.ttl-post):not(.toggle-group-17) { +.ttl-view .contentbase row:not(.ttl-post):not(.toggle-group-17) { +/* .ttl-view .fake-content row:not(.ttl-post):not(.toggle-group-17) { */ padding: 0px; } -.card-spacing { +/* .card-spacing { background-color: var(--card-bg-color); -} +} */ -.ttl-profile-cover > .content { +.ttl-profile-cover > .contentbase { background: none; } -/* .ttl-view .content { */ -.ttl-view .fake-content { +.ttl-view .contentbase { +/* .ttl-view .fake-content { */ transition: all 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } -.ttl-view.large-view .fake-content:first-child { +.ttl-view.large-view .contentbase:first-child { +/* .ttl-view.large-view .fake-content:first-child { */ padding-top: 32px; } -.ttl-view.large-view .fake-content:last-child { +.ttl-view.large-view .contentbase:last-child { +/* .ttl-view.large-view .fake-content:last-child { */ padding-bottom: 32px; } -/* .ttl-view:not(.large-view) .content .card { */ -.ttl-view:not(.large-view) .fake-content .card { +.ttl-view:not(.large-view) .contentbase .card { +/* .ttl-view:not(.large-view) .fake-content .card { */ border-bottom: 1px var(--border-color) solid; } -/* .ttl-view:not(.large-view) .content .card:first-child { */ -.ttl-view:not(.large-view) .fake-content .card:first-child { +.ttl-view:not(.large-view) .contentbase .card:first-child { +/* .ttl-view:not(.large-view) .fake-content .card:first-child { */ border-top: 1px var(--border-color) solid; } -/* .ttl-view:not(.large-view) .content .card { */ -.ttl-view:not(.large-view) .fake-content .card { +.ttl-view:not(.large-view) .contentbase .card { +/* .ttl-view:not(.large-view) .fake-content .card { */ box-shadow: none; } @@ -599,8 +601,8 @@ video > overlay > revealer > controls, .audio-controls { border-radius: 12px; } -/* .ttl-view:not(.large-view) .content .card.card-spacing { */ -.ttl-view:not(.large-view) .fake-content .card.card-spacing { +.ttl-view:not(.large-view) .contentbase .card-spacing:not(.keep-margin) { +/* .ttl-view:not(.large-view) .fake-content .card.card-spacing { */ margin: 0px; } @@ -612,7 +614,7 @@ video > overlay > revealer > controls, .audio-controls { padding: 3px 14px; } -.ttl-view.large-view .fake-content { +.ttl-view.large-view .contentbase { padding-left: 0; padding-right: 0; margin-left: 18px; diff --git a/data/ui/views/base.ui b/data/ui/views/base.ui index e715278d5..f56075a5e 100644 --- a/data/ui/views/base.ui +++ b/data/ui/views/base.ui @@ -159,8 +159,8 @@ 1 never - - + + 1 True 670 diff --git a/data/ui/views/profile_header.ui b/data/ui/views/profile_header.ui index ff143ffa7..1621ab4f9 100644 --- a/data/ui/views/profile_header.ui +++ b/data/ui/views/profile_header.ui @@ -7,6 +7,7 @@ none 0 + hidden