Review of "Desktop Cube" version 33

Details Page Preview

Indulge in nostalgia with useless 3D effects.

Extension Homepage
https://github.com/Schneegans/Desktop-Cube

No comments.

Diff Against

Files

Note: Binary files aren't shown on the web site. To see all files, please download the extension zipfile.

Shexli (experimental) warning 2

Shexli found 2 issues that may need reviewer attention.

EGO-L-002 warning

objects created by extension should be destroyed in disable()

Objects assigned in `enable()` are missing matching `.destroy()` calls in `disable()` or its helper methods.

Destroy all objects

  • extension.js:429
    this._pitch = new St.Adjustment({actor: global.stage, lower: -1, upper: 1})

EGO-L-003 warning

signals connected by extension should be disconnected in disable()

Signals assigned in `enable()` are missing matching disconnect calls in `disable()` or its helper methods.

Disconnect all signals

  • extension.js:437
        this._pitch.connect('notify::value', () => {
          if (Main.actionMode == Shell.ActionMode.OVERVIEW) {
            Main.overview._overview._controls._workspacesDisplay._overviewAdjustment.notify(
              'value');
          }
        })
  • extension.js:544
        this._pitch.connect('notify::value', () => {
          if (this._skybox) {
            this._skybox.pitch = (this._pitch.value * MAX_VERTICAL_ROTATION) * Math.PI / 180;
          }
        })
  • extension.js:687
        this._pressureBarrier.connect('trigger', () => {
          const direction =
            this._leftBarrier._isHit ? Meta.MotionDirection.LEFT : Meta.MotionDirection.RIGHT;
    
          const newWorkspace =
            global.workspace_manager.get_active_workspace().get_neighbor(direction);
    
          if (Main.actionM
  • extension.js:540
    this._settings.connect('changed::background-panorama', updateSkybox)
  • extension.js:582
        this._settings.connect('changed::edge-switch-pressure', () => {
          this._pressureBarrier._threshold = this._settings.get_int('edge-switch-pressure');
        })
  • extension.js:470
        this._settings.connect('changed::enable-desktop-dragging', () => {
          if (this._settings.get_boolean('enable-desktop-dragging')) {
            this._addDesktopDragGesture();
          } else {
            this._removeDesktopDragGesture();
          }
        })
  • extension.js:496
        this._settings.connect('changed::enable-overview-dragging', () => {
          if (this._settings.get_boolean('enable-overview-dragging')) {
            this._addOverviewDragGesture();
          } else {
            this._removeOverviewDragGesture();
          }
        })
  • extension.js:483
        this._settings.connect('changed::enable-panel-dragging', () => {
          if (this._settings.get_boolean('enable-panel-dragging')) {
            this._addPanelDragGesture();
          } else {
            this._removePanelDragGesture();
          }
        })
  • extension.js:746
    this._settings.connect('changed::per-monitor-perspective', updateMonitorPerspective)
  • extension.js:1186
    gesture.connect('begin', tracker._beginTouchpadGesture.bind(tracker))
  • extension.js:1190
    gesture.connect('begin', tracker._beginGesture.bind(tracker))
  • extension.js:1188
    gesture.connect('end', tracker._endTouchpadGesture.bind(tracker))
  • extension.js:1192
    gesture.connect('end', tracker._endTouchGesture.bind(tracker))
  • extension.js:1187
    gesture.connect('update', tracker._updateTouchpadGesture.bind(tracker))
  • extension.js:1191
    gesture.connect('update', tracker._updateGesture.bind(tracker))

All Versions

Version Status
33 Active
32 Rejected
31 Active
30 Active
29 Active
28 Active
27 Active
26 Active
25 Active
24 Active
23 Active
22 Active
21 Active
20 Active
19 Active
18 Active
17 Active
16 Rejected
15 Active
14 Active
13 Active
12 Active
11 Active
10 Active
9 Active
8 Active
7 Active
6 Active
5 Active
4 Active
3 Active
2 Active
1 Rejected

Previous Reviews on this Version

Simon Schneegans posted a review
I think all shexli warnings are false positives. The objects with unconnected signals all get destroyed and the `St.Adjustment` does not have a destroy method which could be called...
JustPerfection active
Better to use `connectObject()` and `disconnectObject()` so it is easier to track for cleanup.