Skip to content
GitLab
Projects Groups Topics Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
  • P Plasma Workspace
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributor statistics
    • Graph
    • Compare revisions
  • Issues 24
    • Issues 24
    • List
    • Boards
    • Service Desk
    • Milestones
  • Bugzilla
    • Bugzilla
  • Merge requests 121
    • Merge requests 121
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Releases
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • PlasmaPlasma
  • Plasma Workspace
  • Merge requests
  • !2535

fix problems in plasmoid layout restore

  • Review changes

  • Download
  • Email patches
  • Plain diff
Merged Marco Martin requested to merge work/mart/layoutManagerFixes into master Jan 25, 2023
  • Overview 3
  • Commits 1
  • Pipelines 5
  • Changes 4

The layout manager has a functionality that when the layout is resized, it tries to move all plasmoids to keep roughtly the same proportional distance they had before the resize happened, to make screen resolution change the least "suprising" possible.

We actually need this in only one case: The screen resoltion changed and there is not a saved plasmoid layout for this resolution.

What was actually happening was that this heuristic was executed only when the layout was resized due to panels being added/resized (and not when it should have been). When a panel gets added/resized we want the plasmoids layoput to change as little as possible again, to not make surprises. As a side effect , it casued a pretty serious bug: plasmoids near to the vertical center of the screen migrated upwards of few pixels at every plasma restart, because ever time it starts without a panel which appears only later, causing that heuristic to execute and break havoc. Now the heuristic is executed only when the screen resolution changes, which will cause a "config key change" event. Execute this also when the containment migrates to a new screen, and as soon this heuristic got executed, save the layout on the new key.

BUG:442919 BUG:437538 BUG:431432 BUG:453141

Assignee
Assign to
Reviewers
Request review from
Time tracking
Source branch: work/mart/layoutManagerFixes