Change application ID from cz.vesp.roster to cz.bugsy.roster
This commit is contained in:
parent
99ab0a73c7
commit
7e3a8c69d8
18
CLAUDE.md
18
CLAUDE.md
@ -6,7 +6,7 @@ This file provides guidance to Claude Code (claude.ai/code) when working with co
|
|||||||
|
|
||||||
Roster is a GNOME application written in Python using GTK 4 and libadwaita. The project follows GNOME application conventions and uses the Meson build system.
|
Roster is a GNOME application written in Python using GTK 4 and libadwaita. The project follows GNOME application conventions and uses the Meson build system.
|
||||||
|
|
||||||
- **Application ID**: `cz.vesp.roster`
|
- **Application ID**: `cz.bugsy.roster`
|
||||||
- **Build System**: Meson
|
- **Build System**: Meson
|
||||||
- **Runtime**: GNOME Platform (org.gnome.Platform)
|
- **Runtime**: GNOME Platform (org.gnome.Platform)
|
||||||
- **UI Framework**: GTK 4 + libadwaita (Adw)
|
- **UI Framework**: GTK 4 + libadwaita (Adw)
|
||||||
@ -40,12 +40,12 @@ The application uses **libsoup3** (from GNOME Platform) for HTTP requests - no e
|
|||||||
|
|
||||||
## Development with Flatpak
|
## Development with Flatpak
|
||||||
|
|
||||||
The project includes a Flatpak manifest (`cz.vesp.roster.json`) for building and running the application in a sandboxed environment:
|
The project includes a Flatpak manifest (`cz.bugsy.roster.json`) for building and running the application in a sandboxed environment:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
# Build with GNOME Builder (recommended for GNOME apps)
|
# Build with GNOME Builder (recommended for GNOME apps)
|
||||||
# Or use flatpak-builder directly:
|
# Or use flatpak-builder directly:
|
||||||
flatpak-builder --user --install --force-clean build-dir cz.vesp.roster.json
|
flatpak-builder --user --install --force-clean build-dir cz.bugsy.roster.json
|
||||||
```
|
```
|
||||||
|
|
||||||
## Architecture
|
## Architecture
|
||||||
@ -83,10 +83,10 @@ src/
|
|||||||
roster.gresource.xml # GResource bundle definition
|
roster.gresource.xml # GResource bundle definition
|
||||||
|
|
||||||
data/
|
data/
|
||||||
cz.vesp.roster.desktop.in # Desktop entry (i18n template)
|
cz.bugsy.roster.desktop.in # Desktop entry (i18n template)
|
||||||
cz.vesp.roster.metainfo.xml.in # AppStream metadata (i18n template)
|
cz.bugsy.roster.metainfo.xml.in # AppStream metadata (i18n template)
|
||||||
cz.vesp.roster.gschema.xml # GSettings schema
|
cz.bugsy.roster.gschema.xml # GSettings schema
|
||||||
cz.vesp.roster.service.in # D-Bus service file (configured by Meson)
|
cz.bugsy.roster.service.in # D-Bus service file (configured by Meson)
|
||||||
icons/ # Application icons
|
icons/ # Application icons
|
||||||
|
|
||||||
po/
|
po/
|
||||||
@ -116,10 +116,10 @@ When adding new `.py` files to `src/`:
|
|||||||
When adding new `.ui` files:
|
When adding new `.ui` files:
|
||||||
1. Place in `src/` directory
|
1. Place in `src/` directory
|
||||||
2. Add `<file>` entry to `src/roster.gresource.xml`
|
2. Add `<file>` entry to `src/roster.gresource.xml`
|
||||||
3. Use `@Gtk.Template(resource_path='/cz/vesp/roster/filename.ui')` in the corresponding Python class
|
3. Use `@Gtk.Template(resource_path='/cz/bugsy/roster/filename.ui')` in the corresponding Python class
|
||||||
|
|
||||||
## GSettings Schema
|
## GSettings Schema
|
||||||
|
|
||||||
Settings are defined in `data/cz.vesp.roster.gschema.xml`. After modifying:
|
Settings are defined in `data/cz.bugsy.roster.gschema.xml`. After modifying:
|
||||||
- Schema is validated during `meson test`
|
- Schema is validated during `meson test`
|
||||||
- Compiled automatically during installation via `gnome.post_install()`
|
- Compiled automatically during installation via `gnome.post_install()`
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
{
|
{
|
||||||
"id" : "cz.vesp.roster",
|
"id" : "cz.bugsy.roster",
|
||||||
"runtime" : "org.gnome.Platform",
|
"runtime" : "org.gnome.Platform",
|
||||||
"runtime-version" : "49",
|
"runtime-version" : "49",
|
||||||
"sdk" : "org.gnome.Sdk",
|
"sdk" : "org.gnome.Sdk",
|
||||||
@ -1,7 +1,7 @@
|
|||||||
[Desktop Entry]
|
[Desktop Entry]
|
||||||
Name=roster
|
Name=roster
|
||||||
Exec=roster
|
Exec=roster
|
||||||
Icon=cz.vesp.roster
|
Icon=cz.bugsy.roster
|
||||||
Terminal=false
|
Terminal=false
|
||||||
Type=Application
|
Type=Application
|
||||||
Categories=Utility;
|
Categories=Utility;
|
||||||
@ -1,6 +1,6 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<schemalist gettext-domain="roster">
|
<schemalist gettext-domain="roster">
|
||||||
<schema id="cz.vesp.roster" path="/cz/vesp/roster/">
|
<schema id="cz.bugsy.roster" path="/cz/bugsy/roster/">
|
||||||
<key name="force-tls-verification" type="b">
|
<key name="force-tls-verification" type="b">
|
||||||
<default>true</default>
|
<default>true</default>
|
||||||
<summary>Force TLS verification</summary>
|
<summary>Force TLS verification</summary>
|
||||||
@ -1,6 +1,6 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<component type="desktop-application">
|
<component type="desktop-application">
|
||||||
<id>cz.vesp.roster</id>
|
<id>cz.bugsy.roster</id>
|
||||||
<metadata_license>CC0-1.0</metadata_license>
|
<metadata_license>CC0-1.0</metadata_license>
|
||||||
<project_license>GPL-3.0-or-later</project_license>
|
<project_license>GPL-3.0-or-later</project_license>
|
||||||
|
|
||||||
@ -36,7 +36,7 @@
|
|||||||
<translation type="gettext">roster</translation>
|
<translation type="gettext">roster</translation>
|
||||||
<!-- All graphical applications having a desktop file must have this tag in the MetaInfo.
|
<!-- All graphical applications having a desktop file must have this tag in the MetaInfo.
|
||||||
If this is present, appstreamcli compose will pull icons, keywords and categories from the desktop file. -->
|
If this is present, appstreamcli compose will pull icons, keywords and categories from the desktop file. -->
|
||||||
<launchable type="desktop-id">cz.vesp.roster.desktop</launchable>
|
<launchable type="desktop-id">cz.bugsy.roster.desktop</launchable>
|
||||||
<!-- Use the OARS website (https://hughsie.github.io/oars/generate.html) to generate these and make sure to use oars-1.1 -->
|
<!-- Use the OARS website (https://hughsie.github.io/oars/generate.html) to generate these and make sure to use oars-1.1 -->
|
||||||
<content_rating type="oars-1.1" />
|
<content_rating type="oars-1.1" />
|
||||||
|
|
||||||
@ -1,3 +1,3 @@
|
|||||||
[D-BUS Service]
|
[D-BUS Service]
|
||||||
Name=cz.vesp.roster
|
Name=cz.bugsy.roster
|
||||||
Exec=@bindir@/roster --gapplication-service
|
Exec=@bindir@/roster --gapplication-service
|
||||||
|
Before Width: | Height: | Size: 12 KiB After Width: | Height: | Size: 12 KiB |
|
Before Width: | Height: | Size: 2.0 KiB After Width: | Height: | Size: 2.0 KiB |
@ -1,4 +1,4 @@
|
|||||||
application_id = 'cz.vesp.roster'
|
application_id = 'cz.bugsy.roster'
|
||||||
|
|
||||||
scalable_dir = 'hicolor' / 'scalable' / 'apps'
|
scalable_dir = 'hicolor' / 'scalable' / 'apps'
|
||||||
install_data(
|
install_data(
|
||||||
|
|||||||
@ -1,6 +1,6 @@
|
|||||||
desktop_file = i18n.merge_file(
|
desktop_file = i18n.merge_file(
|
||||||
input: 'cz.vesp.roster.desktop.in',
|
input: 'cz.bugsy.roster.desktop.in',
|
||||||
output: 'cz.vesp.roster.desktop',
|
output: 'cz.bugsy.roster.desktop',
|
||||||
type: 'desktop',
|
type: 'desktop',
|
||||||
po_dir: '../po',
|
po_dir: '../po',
|
||||||
install: true,
|
install: true,
|
||||||
@ -13,8 +13,8 @@ if desktop_utils.found()
|
|||||||
endif
|
endif
|
||||||
|
|
||||||
appstream_file = i18n.merge_file(
|
appstream_file = i18n.merge_file(
|
||||||
input: 'cz.vesp.roster.metainfo.xml.in',
|
input: 'cz.bugsy.roster.metainfo.xml.in',
|
||||||
output: 'cz.vesp.roster.metainfo.xml',
|
output: 'cz.bugsy.roster.metainfo.xml',
|
||||||
po_dir: '../po',
|
po_dir: '../po',
|
||||||
install: true,
|
install: true,
|
||||||
install_dir: get_option('datadir') / 'metainfo'
|
install_dir: get_option('datadir') / 'metainfo'
|
||||||
@ -24,7 +24,7 @@ appstreamcli = find_program('appstreamcli', required: false, disabler: true)
|
|||||||
test('Validate appstream file', appstreamcli,
|
test('Validate appstream file', appstreamcli,
|
||||||
args: ['validate', '--no-net', '--explain', appstream_file])
|
args: ['validate', '--no-net', '--explain', appstream_file])
|
||||||
|
|
||||||
install_data('cz.vesp.roster.gschema.xml',
|
install_data('cz.bugsy.roster.gschema.xml',
|
||||||
install_dir: get_option('datadir') / 'glib-2.0' / 'schemas'
|
install_dir: get_option('datadir') / 'glib-2.0' / 'schemas'
|
||||||
)
|
)
|
||||||
|
|
||||||
@ -37,8 +37,8 @@ test('Validate schema file',
|
|||||||
service_conf = configuration_data()
|
service_conf = configuration_data()
|
||||||
service_conf.set('bindir', get_option('prefix') / get_option('bindir'))
|
service_conf.set('bindir', get_option('prefix') / get_option('bindir'))
|
||||||
configure_file(
|
configure_file(
|
||||||
input: 'cz.vesp.roster.service.in',
|
input: 'cz.bugsy.roster.service.in',
|
||||||
output: 'cz.vesp.roster.service',
|
output: 'cz.bugsy.roster.service',
|
||||||
configuration: service_conf,
|
configuration: service_conf,
|
||||||
install_dir: get_option('datadir') / 'dbus-1' / 'services'
|
install_dir: get_option('datadir') / 'dbus-1' / 'services'
|
||||||
)
|
)
|
||||||
|
|||||||
@ -1,8 +1,8 @@
|
|||||||
# List of source files containing translatable strings.
|
# List of source files containing translatable strings.
|
||||||
# Please keep this file sorted alphabetically.
|
# Please keep this file sorted alphabetically.
|
||||||
data/cz.vesp.roster.desktop.in
|
data/cz.bugsy.roster.desktop.in
|
||||||
data/cz.vesp.roster.metainfo.xml.in
|
data/cz.bugsy.roster.metainfo.xml.in
|
||||||
data/cz.vesp.roster.gschema.xml
|
data/cz.bugsy.roster.gschema.xml
|
||||||
src/main.py
|
src/main.py
|
||||||
src/window.py
|
src/window.py
|
||||||
src/window.ui
|
src/window.ui
|
||||||
|
|||||||
@ -24,7 +24,7 @@ from .widgets.environment_header_row import EnvironmentHeaderRow
|
|||||||
from .widgets.variable_data_row import VariableDataRow
|
from .widgets.variable_data_row import VariableDataRow
|
||||||
|
|
||||||
|
|
||||||
@Gtk.Template(resource_path='/cz/vesp/roster/environments-dialog.ui')
|
@Gtk.Template(resource_path='/cz/bugsy/roster/environments-dialog.ui')
|
||||||
class EnvironmentsDialog(Adw.Dialog):
|
class EnvironmentsDialog(Adw.Dialog):
|
||||||
"""Dialog for managing project environments and variables."""
|
"""Dialog for managing project environments and variables."""
|
||||||
|
|
||||||
|
|||||||
@ -36,9 +36,9 @@ class HistoryManager:
|
|||||||
|
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
# Use XDG config directory (works for both Flatpak and native)
|
# Use XDG config directory (works for both Flatpak and native)
|
||||||
# Flatpak: ~/.var/app/cz.vesp.roster/config/cz.vesp.roster
|
# Flatpak: ~/.var/app/cz.bugsy.roster/config/cz.bugsy.roster
|
||||||
# Native: ~/.config/cz.vesp.roster
|
# Native: ~/.config/cz.bugsy.roster
|
||||||
self.config_dir = Path(GLib.get_user_config_dir()) / 'cz.vesp.roster'
|
self.config_dir = Path(GLib.get_user_config_dir()) / 'cz.bugsy.roster'
|
||||||
self.history_file = self.config_dir / 'history.json'
|
self.history_file = self.config_dir / 'history.json'
|
||||||
self._ensure_config_dir()
|
self._ensure_config_dir()
|
||||||
|
|
||||||
|
|||||||
@ -34,7 +34,7 @@ class HttpClient:
|
|||||||
self.session = Soup.Session.new()
|
self.session = Soup.Session.new()
|
||||||
|
|
||||||
# Load settings
|
# Load settings
|
||||||
self.settings = Gio.Settings.new('cz.vesp.roster')
|
self.settings = Gio.Settings.new('cz.bugsy.roster')
|
||||||
|
|
||||||
# Initialize TLS verification flag
|
# Initialize TLS verification flag
|
||||||
self.force_tls_verification = True
|
self.force_tls_verification = True
|
||||||
|
|||||||
@ -21,7 +21,7 @@ from gi.repository import Adw, Gtk, GObject
|
|||||||
from .constants import PROJECT_ICONS
|
from .constants import PROJECT_ICONS
|
||||||
|
|
||||||
|
|
||||||
@Gtk.Template(resource_path='/cz/vesp/roster/icon-picker-dialog.ui')
|
@Gtk.Template(resource_path='/cz/bugsy/roster/icon-picker-dialog.ui')
|
||||||
class IconPickerDialog(Adw.Dialog):
|
class IconPickerDialog(Adw.Dialog):
|
||||||
"""Dialog for selecting a project icon."""
|
"""Dialog for selecting a project icon."""
|
||||||
|
|
||||||
|
|||||||
@ -32,9 +32,9 @@ class RosterApplication(Adw.Application):
|
|||||||
"""The main application singleton class."""
|
"""The main application singleton class."""
|
||||||
|
|
||||||
def __init__(self, version='0.0.0'):
|
def __init__(self, version='0.0.0'):
|
||||||
super().__init__(application_id='cz.vesp.roster',
|
super().__init__(application_id='cz.bugsy.roster',
|
||||||
flags=Gio.ApplicationFlags.DEFAULT_FLAGS,
|
flags=Gio.ApplicationFlags.DEFAULT_FLAGS,
|
||||||
resource_base_path='/cz/vesp/roster')
|
resource_base_path='/cz/bugsy/roster')
|
||||||
self.version = version
|
self.version = version
|
||||||
self.create_action('quit', lambda *_: self.quit(), ['<control>q'])
|
self.create_action('quit', lambda *_: self.quit(), ['<control>q'])
|
||||||
self.create_action('about', self.on_about_action)
|
self.create_action('about', self.on_about_action)
|
||||||
@ -55,7 +55,7 @@ class RosterApplication(Adw.Application):
|
|||||||
def on_about_action(self, *args):
|
def on_about_action(self, *args):
|
||||||
"""Callback for the app.about action."""
|
"""Callback for the app.about action."""
|
||||||
about = Adw.AboutDialog(application_name='Roster',
|
about = Adw.AboutDialog(application_name='Roster',
|
||||||
application_icon='cz.vesp.roster',
|
application_icon='cz.bugsy.roster',
|
||||||
developer_name='Pavel Baksy',
|
developer_name='Pavel Baksy',
|
||||||
version=self.version,
|
version=self.version,
|
||||||
developers=['Pavel Baksy'],
|
developers=['Pavel Baksy'],
|
||||||
@ -77,7 +77,7 @@ class RosterApplication(Adw.Application):
|
|||||||
|
|
||||||
def on_shortcuts_action(self, widget, _):
|
def on_shortcuts_action(self, widget, _):
|
||||||
"""Callback for the app.shortcuts action."""
|
"""Callback for the app.shortcuts action."""
|
||||||
builder = Gtk.Builder.new_from_resource('/cz/vesp/roster/shortcuts-dialog.ui')
|
builder = Gtk.Builder.new_from_resource('/cz/bugsy/roster/shortcuts-dialog.ui')
|
||||||
shortcuts_window = builder.get_object('shortcuts_dialog')
|
shortcuts_window = builder.get_object('shortcuts_dialog')
|
||||||
shortcuts_window.set_transient_for(self.props.active_window)
|
shortcuts_window.set_transient_for(self.props.active_window)
|
||||||
shortcuts_window.present()
|
shortcuts_window.present()
|
||||||
|
|||||||
@ -20,7 +20,7 @@
|
|||||||
from gi.repository import Adw, Gtk, Gio, GObject
|
from gi.repository import Adw, Gtk, Gio, GObject
|
||||||
|
|
||||||
|
|
||||||
@Gtk.Template(resource_path='/cz/vesp/roster/preferences-dialog.ui')
|
@Gtk.Template(resource_path='/cz/bugsy/roster/preferences-dialog.ui')
|
||||||
class PreferencesDialog(Adw.PreferencesWindow):
|
class PreferencesDialog(Adw.PreferencesWindow):
|
||||||
__gtype_name__ = 'PreferencesDialog'
|
__gtype_name__ = 'PreferencesDialog'
|
||||||
|
|
||||||
@ -38,7 +38,7 @@ class PreferencesDialog(Adw.PreferencesWindow):
|
|||||||
self.history_manager = history_manager
|
self.history_manager = history_manager
|
||||||
|
|
||||||
# Get settings
|
# Get settings
|
||||||
self.settings = Gio.Settings.new('cz.vesp.roster')
|
self.settings = Gio.Settings.new('cz.bugsy.roster')
|
||||||
|
|
||||||
# Bind settings to UI
|
# Bind settings to UI
|
||||||
self.settings.bind(
|
self.settings.bind(
|
||||||
|
|||||||
@ -36,9 +36,9 @@ class ProjectManager:
|
|||||||
|
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
# Use XDG data directory (works for both Flatpak and native)
|
# Use XDG data directory (works for both Flatpak and native)
|
||||||
# Flatpak: ~/.var/app/cz.vesp.roster/data/cz.vesp.roster
|
# Flatpak: ~/.var/app/cz.bugsy.roster/data/cz.bugsy.roster
|
||||||
# Native: ~/.local/share/cz.vesp.roster
|
# Native: ~/.local/share/cz.bugsy.roster
|
||||||
self.data_dir = Path(GLib.get_user_data_dir()) / 'cz.vesp.roster'
|
self.data_dir = Path(GLib.get_user_data_dir()) / 'cz.bugsy.roster'
|
||||||
self.projects_file = self.data_dir / 'requests.json'
|
self.projects_file = self.data_dir / 'requests.json'
|
||||||
self._ensure_data_dir()
|
self._ensure_data_dir()
|
||||||
|
|
||||||
|
|||||||
@ -1,6 +1,6 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<gresources>
|
<gresources>
|
||||||
<gresource prefix="/cz/vesp/roster">
|
<gresource prefix="/cz/bugsy/roster">
|
||||||
<file preprocess="xml-stripblanks">main-window.ui</file>
|
<file preprocess="xml-stripblanks">main-window.ui</file>
|
||||||
<file preprocess="xml-stripblanks">shortcuts-dialog.ui</file>
|
<file preprocess="xml-stripblanks">shortcuts-dialog.ui</file>
|
||||||
<file preprocess="xml-stripblanks">preferences-dialog.ui</file>
|
<file preprocess="xml-stripblanks">preferences-dialog.ui</file>
|
||||||
|
|||||||
@ -20,7 +20,7 @@
|
|||||||
from gi.repository import Gtk, GObject
|
from gi.repository import Gtk, GObject
|
||||||
|
|
||||||
|
|
||||||
@Gtk.Template(resource_path='/cz/vesp/roster/widgets/environment-column-header.ui')
|
@Gtk.Template(resource_path='/cz/bugsy/roster/widgets/environment-column-header.ui')
|
||||||
class EnvironmentColumnHeader(Gtk.Box):
|
class EnvironmentColumnHeader(Gtk.Box):
|
||||||
"""Widget for displaying an environment column header with edit/delete buttons."""
|
"""Widget for displaying an environment column header with edit/delete buttons."""
|
||||||
|
|
||||||
|
|||||||
@ -21,7 +21,7 @@ from gi.repository import Gtk, GObject
|
|||||||
from .environment_column_header import EnvironmentColumnHeader
|
from .environment_column_header import EnvironmentColumnHeader
|
||||||
|
|
||||||
|
|
||||||
@Gtk.Template(resource_path='/cz/vesp/roster/widgets/environment-header-row.ui')
|
@Gtk.Template(resource_path='/cz/bugsy/roster/widgets/environment-header-row.ui')
|
||||||
class EnvironmentHeaderRow(Gtk.Box):
|
class EnvironmentHeaderRow(Gtk.Box):
|
||||||
"""Widget for the header row containing all environment column headers."""
|
"""Widget for the header row containing all environment column headers."""
|
||||||
|
|
||||||
|
|||||||
@ -20,7 +20,7 @@
|
|||||||
from gi.repository import Gtk, GObject
|
from gi.repository import Gtk, GObject
|
||||||
|
|
||||||
|
|
||||||
@Gtk.Template(resource_path='/cz/vesp/roster/widgets/environment-row.ui')
|
@Gtk.Template(resource_path='/cz/bugsy/roster/widgets/environment-row.ui')
|
||||||
class EnvironmentRow(Gtk.Box):
|
class EnvironmentRow(Gtk.Box):
|
||||||
"""Widget for displaying and editing an environment with its variables."""
|
"""Widget for displaying and editing an environment with its variables."""
|
||||||
|
|
||||||
|
|||||||
@ -20,7 +20,7 @@
|
|||||||
from gi.repository import Gtk, GObject
|
from gi.repository import Gtk, GObject
|
||||||
|
|
||||||
|
|
||||||
@Gtk.Template(resource_path='/cz/vesp/roster/widgets/header-row.ui')
|
@Gtk.Template(resource_path='/cz/bugsy/roster/widgets/header-row.ui')
|
||||||
class HeaderRow(Gtk.Box):
|
class HeaderRow(Gtk.Box):
|
||||||
"""Widget for editing a single HTTP header key-value pair."""
|
"""Widget for editing a single HTTP header key-value pair."""
|
||||||
|
|
||||||
|
|||||||
@ -21,7 +21,7 @@ from gi.repository import Gtk, GObject, Gdk
|
|||||||
from datetime import datetime
|
from datetime import datetime
|
||||||
|
|
||||||
|
|
||||||
@Gtk.Template(resource_path='/cz/vesp/roster/widgets/history-item.ui')
|
@Gtk.Template(resource_path='/cz/bugsy/roster/widgets/history-item.ui')
|
||||||
class HistoryItem(Gtk.Box):
|
class HistoryItem(Gtk.Box):
|
||||||
"""Widget for displaying a history entry."""
|
"""Widget for displaying a history entry."""
|
||||||
|
|
||||||
|
|||||||
@ -21,7 +21,7 @@ from gi.repository import Gtk, GObject, Gio
|
|||||||
from .request_item import RequestItem
|
from .request_item import RequestItem
|
||||||
|
|
||||||
|
|
||||||
@Gtk.Template(resource_path='/cz/vesp/roster/widgets/project-item.ui')
|
@Gtk.Template(resource_path='/cz/bugsy/roster/widgets/project-item.ui')
|
||||||
class ProjectItem(Gtk.Box):
|
class ProjectItem(Gtk.Box):
|
||||||
"""Widget for displaying a project with its requests."""
|
"""Widget for displaying a project with its requests."""
|
||||||
|
|
||||||
|
|||||||
@ -20,7 +20,7 @@
|
|||||||
from gi.repository import Gtk, GObject
|
from gi.repository import Gtk, GObject
|
||||||
|
|
||||||
|
|
||||||
@Gtk.Template(resource_path='/cz/vesp/roster/widgets/request-item.ui')
|
@Gtk.Template(resource_path='/cz/bugsy/roster/widgets/request-item.ui')
|
||||||
class RequestItem(Gtk.Box):
|
class RequestItem(Gtk.Box):
|
||||||
"""Widget for displaying a saved request."""
|
"""Widget for displaying a saved request."""
|
||||||
|
|
||||||
|
|||||||
@ -21,7 +21,7 @@ from gi.repository import Gtk, GObject, GLib
|
|||||||
from datetime import datetime, timedelta
|
from datetime import datetime, timedelta
|
||||||
|
|
||||||
|
|
||||||
@Gtk.Template(resource_path='/cz/vesp/roster/widgets/variable-data-row.ui')
|
@Gtk.Template(resource_path='/cz/bugsy/roster/widgets/variable-data-row.ui')
|
||||||
class VariableDataRow(Gtk.Box):
|
class VariableDataRow(Gtk.Box):
|
||||||
"""Widget for a data row with variable name and values for each environment."""
|
"""Widget for a data row with variable name and values for each environment."""
|
||||||
|
|
||||||
|
|||||||
@ -20,7 +20,7 @@
|
|||||||
from gi.repository import Gtk, GObject
|
from gi.repository import Gtk, GObject
|
||||||
|
|
||||||
|
|
||||||
@Gtk.Template(resource_path='/cz/vesp/roster/widgets/variable-row.ui')
|
@Gtk.Template(resource_path='/cz/bugsy/roster/widgets/variable-row.ui')
|
||||||
class VariableRow(Gtk.Box):
|
class VariableRow(Gtk.Box):
|
||||||
"""Widget for editing a variable name."""
|
"""Widget for editing a variable name."""
|
||||||
|
|
||||||
|
|||||||
@ -46,7 +46,7 @@ import uuid
|
|||||||
logger = logging.getLogger(__name__)
|
logger = logging.getLogger(__name__)
|
||||||
|
|
||||||
|
|
||||||
@Gtk.Template(resource_path='/cz/vesp/roster/main-window.ui')
|
@Gtk.Template(resource_path='/cz/bugsy/roster/main-window.ui')
|
||||||
class RosterWindow(Adw.ApplicationWindow):
|
class RosterWindow(Adw.ApplicationWindow):
|
||||||
__gtype_name__ = 'RosterWindow'
|
__gtype_name__ = 'RosterWindow'
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user