Read/write GObject properties are not writable
System information
- Linux Mint 19 / Ubuntu 18.04
- cinnamon git
- gobject-introspection 1.56.1
- glib 2.56.2
I am using a modified version of Cinnamon linked with GJS instead of our fork, CJS, so I can verify whether or not this is still a bug, or a problem with the fork, where I first noticed the issue while back-porting commits.
- https://github.com/jaszhix/Cinnamon/tree/mozjs60-sandbox
- https://github.com/jaszhix/cjs/commits/mozjs60
What is your version of GJS? commit 239f338e
Bug information
Steps to reproduce
- Start Cinnamon with GJS master
- Check stdout
Current behaviour
(cinnamon:8887): Gjs-WARNING **: 09:19:41.256: JS ERROR: Error: Property StTableChild.y_align is not writable
_patchContainerClass/containerClass.prototype.child_set@/usr/share/cinnamon/js/ui/environment.js:33:13
_patchContainerClass/containerClass.prototype.add@/usr/share/cinnamon/js/ui/environment.js:46:13
_init@/usr/share/cinnamon/js/ui/messageTray.js:497:9
Notification@/usr/share/cinnamon/js/ui/messageTray.js:422:5
warningNotify@/usr/share/cinnamon/js/ui/main.js:914:24
notifyXletStartupError@/usr/share/cinnamon/js/ui/main.js:535:5
Gjs-Message: 09:19:37.250: JS LOG: [LookingGlass/error] Property StTableChild.x_align is not writable
Gjs-Message: 09:19:37.250: JS LOG: [LookingGlass/trace]
<----------------
_patchContainerClass/containerClass.prototype.child_set@/usr/share/cinnamon/js/ui/environment.js:33:13
_patchContainerClass/containerClass.prototype.add@/usr/share/cinnamon/js/ui/environment.js:46:13
_buildHeader@/usr/share/cinnamon/applets/calendar@cinnamon.org/calendar.js:257:13
Calendar@/usr/share/cinnamon/applets/calendar@cinnamon.org/calendar.js:178:9
CinnamonCalendarApplet@/usr/share/cinnamon/applets/calendar@cinnamon.org/applet.js:58:30
main@/usr/share/cinnamon/applets/calendar@cinnamon.org/applet.js:213:12
createApplet@/usr/share/cinnamon/js/ui/appletManager.js:580:18
addAppletToPanels@/usr/share/cinnamon/js/ui/appletManager.js:355:22
finishExtensionLoad@/usr/share/cinnamon/js/ui/appletManager.js:94:14
_init/<@/usr/share/cinnamon/js/ui/extension.js:254:17
---------------->
This causes the alignment of widgets to be incorrect and distorted.
Expected behaviour
This has been writable since using CJS based on GJS 1.52 with mozjs52.
It looks like the property is specified as R/W on this line, in st-table-child.c in Cinnamon. I'm hoping its something obvious I've missed, or a case of deprecated API usage. This is currently a blocker for migrating from mozjs52. GJS is otherwise stable and performing really well. If you need any other information, testing, or debug assistance, I am happy to help.