pop-os / shell

Pop!_OS Shell
GNU General Public License v3.0
4.85k stars 263 forks source link

Error: No property border_width on GtkGrid while attempting to display extension settings in GNOME 40.1.0 / Fedora 34 #974

Open jfhbrook opened 3 years ago

jfhbrook commented 3 years ago

(1) Issue/Bug Description:

When trying to enable the Pop Shell extension in Fedora 34 (GNOME 40.1.0), I see an error message and am unable to toggle the extension:

Error: No property border_width on GtkGrid

Stack trace:
  _init/Gtk.Widget.prototype._init@resource:///org/gnome/gjs/modules/core/overrides/Gtk.js:45:40
  settings_dialog_view@/usr/share/gnome-shell/extensions/pop-shell@system76.com/prefs.js:46:16
  settings_dialog_new@/usr/share/gnome-shell/extensions/pop-shell@system76.com/prefs.js:9:23
  buildPrefsWidget@/usr/share/gnome-shell/extensions/pop-shell@system76.com/prefs.js:127:18
  _init@resource:///org/gnome/Shell/Extensions/js/extensionsService.js:209:40
  OpenExtensionPrefsAsync/<@resource:///org/gnome/Shell/Extensions/js/extensionsService.js:122:28
  asyncCallback@resource:///org/gnome/gjs/modules/core/overrides/Gio.js:115:22
  run@resource:///org/gnome/Shell/Extensions/js/dbusService.js:177:20
  main@resource:///org/gnome/Shell/Extensions/js/main.js:19:13
  run@resource:///org/gnome/gjs/modules/script/package.js:206:19
  start@resource:///org/gnome/gjs/modules/script/package.js:190:8
  @/usr/share/gnome-shell/org.gnome.Shell.Extensions:1:17

(2) Steps to reproduce (if you know):

I updated my Fedora install to version 34 and suspect that this is enough.

(3) Expected behavior:

I expected Pop Shell to be enabled on my machine after my Fedora upgrade

(4) Distribution (run cat /etc/os-release):

NAME=Fedora
VERSION="34 (Workstation Edition)"
ID=fedora
VERSION_ID=34
VERSION_CODENAME=""
PLATFORM_ID="platform:f34"
PRETTY_NAME="Fedora 34 (Workstation Edition)"
ANSI_COLOR="0;38;2;60;110;180"
LOGO=fedora-logo-icon
CPE_NAME="cpe:/o:fedoraproject:fedora:34"
HOME_URL="https://fedoraproject.org/"
DOCUMENTATION_URL="https://docs.fedoraproject.org/en-US/fedora/34/system-administrators-guide/"
SUPPORT_URL="https://fedoraproject.org/wiki/Communicating_and_getting_help"
BUG_REPORT_URL="https://bugzilla.redhat.com/"
REDHAT_BUGZILLA_PRODUCT="Fedora"
REDHAT_BUGZILLA_PRODUCT_VERSION=34
REDHAT_SUPPORT_PRODUCT="Fedora"
REDHAT_SUPPORT_PRODUCT_VERSION=34
PRIVACY_POLICY_URL="https://fedoraproject.org/wiki/Legal:PrivacyPolicy"
VARIANT="Workstation Edition"
VARIANT_ID=workstation

(5) Gnome Shell version:

(base) [josh@mew joshiverse]$ dnf info gnome-shell-extension-pop-shell
Fedora 34 - x86_64                                                                    3.5 MB/s |  74 MB     00:20
Fedora 34 openh264 (From Cisco) - x86_64                                              3.2 kB/s | 2.5 kB     00:00
Fedora Modular 34 - x86_64                                                            3.2 MB/s | 4.9 MB     00:01
Fedora 34 - x86_64 - Updates                                                          2.0 MB/s |  11 MB     00:05
Fedora Modular 34 - x86_64 - Updates                                                  1.4 MB/s | 4.2 MB     00:02
RPM Fusion for Fedora 34 - Free                                                       1.4 MB/s | 941 kB     00:00
RPM Fusion for Fedora 34 - Free - Updates                                             274 kB/s |  69 kB     00:00
RPM Fusion for Fedora 34 - Nonfree                                                    472 kB/s | 246 kB     00:00
RPM Fusion for Fedora 34 - Nonfree - Updates                                           29 kB/s |  14 kB     00:00
Installed Packages
Name         : gnome-shell-extension-pop-shell
Version      : 1.2.0
Release      : 3.fc34
Architecture : noarch
Size         : 1.0 M
Source       : gnome-shell-extension-pop-shell-1.2.0-3.fc34.src.rpm
Repository   : @System
From repo    : fedora
Summary      : GNOME Shell extension for advanced tiling window management
URL          : https://github.com/pop-os/shell
License      : GPLv3 and ASL 2.0 and MIT
Description  : Pop Shell is a keyboard-driven layer for GNOME Shell which allows for quick and
             : sensible navigation and management of windows.  The core feature of Pop Shell
             : is the addition of advanced tiling window management - a feature that has been
             : highly-sought within our community.  For many - ourselves included - i3wm has
             : become the leading competitor to the GNOME desktop.

(7) Where was Pop Shell installed from:

Fedora's mainline repos!

(8) Monitor Setup (2 x 1080p, 4K, Primary(Horizontal), Secondary(Vertical), etc):

Just a single humble laptop screen

(9) Other Installed/Enabled Extensions:

Only "User Themes" is enabled.

(10) Other Notes:

mmstick commented 3 years ago

GNOME 40 is not supported at this time

jfhbrook commented 3 years ago

Understood! I had a feeling it must be pretty bleeding edge. OOC anything known about the timeline, or things I can reasonably do to help? Otherwise, happy to file an issue and call it a day.

mmstick commented 3 years ago

Pop!_OS won't have GNOME 40+ until 21.10, because Ubuntu is not shipping GNOME 40 this cycle. But those who are on GNOME 40 are free to contribute patches to get it working on GNOME 40 though.

jfhbrook commented 3 years ago

Got it. Thanks!

roybaishali07 commented 3 years ago

Facing the same issue in n fedora 34 under wayland photo_2021-06-19_22-05-28 Saw the pr #909 and thought this issue to be fixed. Installed the extension using dnf. Isn't the fedora rpm package maintained?

brunobmello25 commented 3 years ago

I used this extension with pop os with no trouble for a while on gnome 40, around abril. Maybe something related to the last release broke it? I'm running arch with gnome 40.2.0

jfhbrook commented 3 years ago

I'm not sure what changed but I did an update on my Fedora machine and my windows kinda magically started tiling again :+1: gnome 40.1.0, pop shell v 1.2.0^1.d59e373 (maybe they patched it?)

marcosdly commented 3 years ago

Same error on GNOME 40.3 on Arch Linux

akibukis commented 3 years ago

I can confirm this happens to POP OS as well:

Distributor ID: Pop Description: Pop!_OS 21.04 Release: 21.04 Codename: hirsute

GNOME Shell 40.2.

jacobgkau commented 3 years ago

Description: Pop!_OS 21.04 GNOME Shell 40.2.

@akibukis Pop!_OS 21.04 uses GNOME Shell 3.38, not 40.

carlwgeorge commented 3 years ago

I'm not sure what changed but I did an update on my Fedora machine and my windows kinda magically started tiling again +1 gnome 40.1.0, pop shell v 1.2.0^1.d59e373 (maybe they patched it?)

Hello, Fedora package maintainer here. gnome-shell-extension-pop-shell-1.2.0^1.d59e373-1.fc34 is built from a snapshot at commit d59e373, which also includes #909. That's why it started working with GNOME 40. Generally I prefer to stick to tagged versions for the packages I maintain, but the GNOME 40 fixes aren't in a tagged version yet and I wanted to get it working again on Fedora 34.

lovepreetjassal commented 3 years ago

@carlwgeorge Just want to say thank you for maintaining/updating even when its not officially supported on Gnome 40 yet.

togetherwithasteria commented 2 years ago

Reproduced this again in gnome-shell 1:41.2-2 running on Arch Linux with Wayland.

Logs The settings of extension pop-shell@system76.com had an error: ``` Error: No property border_width on GtkGrid ``` Stack trace: ``` _init/Gtk.Widget.prototype._init@resource:///org/gnome/gjs/modules/core/overrides/Gtk.js:47:50 settings_dialog_view@/usr/share/gnome-shell/extensions/pop-shell@system76.com/prefs.js:46:16 settings_dialog_new@/usr/share/gnome-shell/extensions/pop-shell@system76.com/prefs.js:9:23 buildPrefsWidget@/usr/share/gnome-shell/extensions/pop-shell@system76.com/prefs.js:127:18 _init@resource:///org/gnome/Shell/Extensions/js/extensionsService.js:219:40 OpenExtensionPrefsAsync/<@resource:///org/gnome/Shell/Extensions/js/extensionsService.js:128:33 asyncCallback@resource:///org/gnome/gjs/modules/core/overrides/Gio.js:115:22 run@resource:///org/gnome/Shell/Extensions/js/dbusService.js:177:20 main@resource:///org/gnome/Shell/Extensions/js/main.js:19:13 run@resource:///org/gnome/gjs/modules/script/package.js:206:19 start@resource:///org/gnome/gjs/modules/script/package.js:190:8 @/usr/share/gnome-shell/org.gnome.Shell.Extensions:1:17 ```

Edit: Switching to the git package fixed it.