feat: implement the base classes for launcher + input

- Base classes for lancher: Dashboard + Taskbar
- Allow the shell to monitor directly wayland seat keyboard (on demand)
This commit is contained in:
DL
2025-06-13 19:34:12 +02:00
parent e6515cca06
commit b10cfab3ba
27 changed files with 949 additions and 131 deletions

View File

@ -4,5 +4,7 @@
<file alias="dev.iohub.diya.session-shell.css">resources/session-shell.css</file>
<file alias="virtual-keyboard.css">resources/virtual-keyboard.css</file>
<file alias="default.keymap">resources/default.keymap</file>
<file alias="dashboard.ui">resources/ui/dashboard.ui</file>
<file alias="taskbar.ui">resources/ui/taskbar.ui</file>
</gresource>
</gresources>

View File

@ -1,9 +1,15 @@
@import url("resource:///dev/iohub/diya/shell/virtual-keyboard.css");
#diya_shell_launcher
diya-taskbar
{
background-color: orange;
}
diya-dashboard
{
background-color: blue;
}
#diya_shell_background
{
background-image:url("file:///etc/xdg/labwc/wpp.jpg");

59
resources/ui/dashboard.ui Normal file
View File

@ -0,0 +1,59 @@
<?xml version="1.0" encoding="UTF-8"?>
<interface>
<template class="DiyaDashboardWidget" parent="DiyaShellWindow">
<!--property name="title" translatable="yes">Example Application</property-->
<!--property name="default-width">600</property>
<property name="default-height">400</property-->
<child>
<object class="GtkBox">
<property name="orientation">vertical</property>
<child>
<object class="GtkRevealer" id="revealer">
<property name="transition-type">slide-up</property>
<property name="reveal-child">0</property>
<child>
<object class="GtkBox">
<property name="orientation">vertical</property>
<child>
<object class="GtkBox" id="header">
<property name="orientation">horizontal</property>
<child>
<object class="GtkSearchEntry" id="search_entry">
<property name="hexpand">1</property>
<!--signal name="search-changed" handler="search_text_changed"/-->
</object>
</child>
<child>
<object class="GtkMenuButton" id="gears">
<property name="direction">none</property>
</object>
</child>
</object>
</child>
<child>
<object class="GtkLabel" id="tmp">
<property name="visible">1</property>
<property name="vexpand">1</property>
<property name="label" translatable="yes">content</property>
</object>
</child>
</object>
</child>
</object>
</child>
<child>
<object class="GtkBox" id="taskbar">
<property name="orientation">horizontal</property>
<child>
<object class="GtkToggleButton" id="btn_user">
<property name="visible">1</property>
<property name="label" translatable="yes">User</property>
<!--signal name="toggled" handler="diya_dashboard_toggle"/-->
</object>
</child>
</object>
</child>
</object>
</child>
</template>
</interface>

20
resources/ui/taskbar.ui Normal file
View File

@ -0,0 +1,20 @@
<?xml version="1.0" encoding="UTF-8"?>
<interface>
<template class="DiyaTaskbarWidget" parent="DiyaShellWindow">
<!--property name="title" translatable="yes">Example Application</property-->
<!--property name="default-width">600</property>
<property name="default-height">400</property-->
<child>
<object class="GtkBox" id="taskbar">
<property name="orientation">horizontal</property>
<child>
<object class="GtkToggleButton" id="btn_toggle">
<property name="visible">1</property>
<property name="label" translatable="yes">Diya</property>
<!--signal name="toggled" handler="diya_dashboard_toggle"/-->
</object>
</child>
</object>
</child>
</template>
</interface>