Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Bug]: Results list appears in top left corner of screen, detached from interface #2962

Open
3 tasks done
usnmustanger opened this issue Sep 8, 2023 · 25 comments
Open
3 tasks done
Labels
Sonoma macOS 14 Sonoma

Comments

@usnmustanger
Copy link

usnmustanger commented Sep 8, 2023

Before submitting your bug report, please confirm you have completed the following steps

Bug description

The results list appears in the top left corner of my screen, detached from the interface. I'm currently using the bezel interface, but this happens regardless of which interface I'm using.

When I click the little gear at the right side of the results header, the resulting pop-up does appear where it should be if the results list was displayed below the interface.

The results list is not movable/draggable.

It may also be worth noting that the animated QS startup icon also appears in the top left corner of the screen, same location as the results list.

Screenshot 2023-09-08 at 3 56 57 PM

Steps to reproduce

  1. Activate Quicksilver
  2. Type something in the first pane
  3. Results list displays detached from interface, and in the top left corner of the screen

Expected behavior

Results list should display directly below the interface

MacOS Version

Other

Quicksilver Version

2.4.1 (4040)

Relevant Plugins

Screenshot 2023-09-08 at 4 02 41 PM

Crash Logs or Spindump

No response

Screenshots

Screenshot 2023-09-08 at 3 56 57 PM Screenshot 2023-09-08 at 4 02 41 PM

Additional info

OS Version is latest OS 14 Sonoma beta (release 23A5337a, latest as of 9/8/2023)

I have tried the following, nothing changes the results:

  • Delete prefs file
  • Uninstall/clean reinstall Quicksilver
  • Reboot Macbook Pro
  • Installing QS in different "clean" user account
@n8henrie
Copy link
Member

n8henrie commented Sep 9, 2023

Thanks for the report! I don't know that any of the active devs plan to join the beta, but we'll look into this and try to reproduce once it is released.

@usnmustanger
Copy link
Author

Thanks for the report! I don't know that any of the active devs plan to join the beta, but we'll look into this and try to reproduce once it is released.

I understand, thank you!

@tvalenta
Copy link

FWIW, under 23A5286i (macOS 14 beta 3) I was able to move windows around. With macOS Sonoma build 23A339 (the latest Release Candidate), I get this same behavior. In addition, if I click the icon in the menu bar while focus is held by anything other than QS, input from the keyboard is mostly swallowed by something. I can recover by activating the QS shortcut and then clicking the menu bar icon again.

I'm not yet sure if this is a bug in the RC, or a change in macOS. If I figure it out, I'll let you know.

@tvalenta
Copy link

@usnmustanger if I deselect "Superfluous visual effects" from options, all the issues I observe go away.

@usnmustanger
Copy link
Author

@usnmustanger if I deselect "Superfluous visual effects" from options, all the issues I observe go away.

That fixed it for me too, thank you!

@lgarron
Copy link
Contributor

lgarron commented Sep 27, 2023

Also seeing this in macOS Sonoma 14.0 stable.

The QS launch icon, main interface window, and results dropdown all appear in the upper left of the screen.

I can move the main interface window to the middle of the screen manually, but:

  • I can't move the result dropdown.
  • The main interface window location is reset to the upper left if I restart Quicksilver.
  • Sometimes the main interface window location is reset every time it shows anew.

Toggling "Superfluous visual effects" didn't help.

@lgarron
Copy link
Contributor

lgarron commented Sep 27, 2023

Okay, this worked for me briefly:

  • Turn off "Superfluous visual effects".
  • Change the interface from Nostromo to basic and back.

… but I relaunched Quicksilver to see if it persists, and now the settings window is stuck in the upper left as well. 😭

EDIT: tried again, and this time it worked!

@n8henrie
Copy link
Member

Using Bezel (built-in) and deselecting superfluous visual effects, things seem okay. Required a relaunch after changing that setting.

@aisrael
Copy link

aisrael commented Sep 28, 2023

Just wanted to chime in here that, on a fresh install on Sonoma, I can't even agree to the license agreement, much less toggle any UI settings.

@sjostromlab
Copy link

Same here, with Sonoma 14.0 (23A344). Windows jump to wrong places. I cannot access settings. Computer becomes generally unresponsive at times. I have to force-quit Quicksilver to make the computer behave. Hoping for a fix, coz I honestly use Quicksilver all the time! Thanks!

@tbraas
Copy link

tbraas commented Oct 5, 2023

Same issue on my system.
Uploading Screenshot 2023-10-06 at 10.26.39.png…

@aspacca
Copy link

aspacca commented Oct 6, 2023

Computer becomes generally unresponsive at times. I have to force-quit Quicksilver to make the computer behave

on top of that I can add that when quicksilver is open (fresh install on sonoma, m2 max MacBook Pro 2023) the shortcuts on other apps fail to work as well.

@n8henrie
Copy link
Member

Trying to chase this down,

[self setFrame:centeredRect display:NO];

[NSWindows setFrame:] doesn't seem to be working. I can manually set NSRect centeredRect = NSMakeRect(200, 200, 228, 204);; -- changing the second pair of values (width and height) changes the width and height of the intro QS animation, but the first two (which I arbitrarily set to 200, 200 here) doesn't change anything -- still just appears in top left.

@n8henrie
Copy link
Member

Reading https://stackoverflow.com/questions/55965290/set-nswindow-size-programmatically-doesnt-work

Unfortunately moving setFrame into QSGCDMainSync doesn't seem to do anything. Neither does changing display:NO to YES, or adding animate:YES.

@n8henrie
Copy link
Member

Commenting out [animation setTransformFt:QSExtraExtraEffect]; changes the intro QS splash so that it loads in the center again, but then moves to the top left.

[animation setTransformFt:QSExtraExtraEffect];

@n8henrie
Copy link
Member

I hadn't realized we were using private APIs (the vendored CPSPrivate.h, CGSPrivate.h) -- I wonder if that's related, as a lot of the animations seem to rely on transforms provided by these. That would make this pretty hard to debug I imagine.

I these private headers may also be related to the CGSWindowShmemCreateWithPort failed on port 0 that I see scattered throughout the console, and I think are new.

@n8henrie
Copy link
Member

n8henrie commented Nov 2, 2023

Tiny bit of very slow progress today, I think I was on the right track with the suspicion of cgs stuff above.

Changing cgs = _CGSDefaultConnection() to cgs= nil here allows the QS splash at startup and the results windows to both stay in the center of the screen instead of jumping to top left.

@n8henrie
Copy link
Member

n8henrie commented Nov 3, 2023

Culprit seems to be CGSSetWindowTransform, at both of these:

Here's a old related bug in which they speculate that CGSSetWindowTransform has abnormal behavior if called while a window is not visible: https://bugzilla.mozilla.org/show_bug.cgi?id=1448132

Guarding with if ([[self window] isVisible]) { does not fix the behavior in this case.

@n8henrie
Copy link
Member

n8henrie commented Nov 3, 2023

Issues persists even if I change to CGSSetWindowTransform(cgs, wid, CGAffineTransformIdentity);, so perhaps something about CGSSetWindowTransform is changing the positioning of the frame (or preventing it from being updated); IOW it doesn't seem to be a problem with the transform itself AFAICT.

@quentinmit
Copy link

quentinmit commented Dec 1, 2023

I couldn't actually toggle "Superfluous visual effects" because the click events didn't seem to be delivered to the right control. But after UTSLing, I tried

defaults write com.blacktree.Quicksilver "Use Effects" -bool NO

and fingers crossed for now Quicksilver is working again on Sonoma.

@aspacca
Copy link

aspacca commented Dec 1, 2023

and fingers crossed for now Quicksilver is working again on Sonoma.

unluckly i didn't work for me.

btw, on a computer where quicksilver was installed before the upgrade to sonoma I have no problem. on one where I installed quicksilver for the first time after installing sonoma nothing works

@n8henrie
Copy link
Member

n8henrie commented Dec 1, 2023

on one where I installed quicksilver for the first time after installing sonoma nothing works

interesting -- thanks for that tidbit, this may help me reproduce issues, since it's been running fine on my Sonoma system since day 1 (with superfluous visual effects disabled at least)

@pjrobertson
Copy link
Member

@n8henrie one way to proceed would be to:

  1. Remove GCSPrivate.h file
  2. Xcode will then throw up build errors for places that call to undefined methods - remove all of these from the code

Aside: Plugins would also need checking.

@n8henrie
Copy link
Member

n8henrie commented Dec 4, 2023 via email

@headcrash13
Copy link

I wonder if it is related to the "Stage Manager?" Following the below instructions I got the license windows etc. to stop flying completely off the screen (and playing whack-a-moving-button), but I noticed that the clicks were pushing the window to the edge of the thick grey outline when the desktop shows/hides. I could move the mouse to the upper-left (and click) and I could get the window to reappear, but as soon as I started to mouse over it (or click) it would slide away again. Is Stage Manager considering (at the very least) swallowing the clicks because it thinks you are clicking (through?) and on the desktop? After an app restart the "superfluous" fix seems to work, and with the below all seems....relatively good? :)

1. Open the System Settings app
2. Click on the Desktop & Dock menu
3. Set “Click wallpaper to reveal desktop” to “Only in Stage Manager”

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Sonoma macOS 14 Sonoma
Projects
None yet
Development

No branches or pull requests