-
Notifications
You must be signed in to change notification settings - Fork 12
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
Implement "Try new editing experience" to promote CDT LSP #421
Conversation
@ghentschke you can have an early look at this - I really want to get this into M3, which means latest Wednesday. This is still in draft mode and requires the corresponding CDT change eclipse-cdt/cdt#1088 so that we can hook into CEditor. |
Yes, I'll take look at it. |
bundles/org.eclipse.cdt.lsp/src/org/eclipse/cdt/lsp/internal/switchtolsp/SwitchToLsp.java
Outdated
Show resolved
Hide resolved
I think this is important to give vendors the possibility to disable the banners. |
@ghentschke / other interested parties Please have a look - I updated the original description with updated and additional screenshots. eclipse-cdt/cdt#968 also has some of the older dark mode screenshots. |
...g.eclipse.cdt.lsp/src/org/eclipse/cdt/lsp/internal/switchtolsp/ISwitchBackToTraditional.java
Show resolved
Hide resolved
* SPDX-License-Identifier: EPL-2.0 | ||
*******************************************************************************/ | ||
|
||
package org.eclipse.cdt.lsp.internal.switchtolsp; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I still cannot run/compile this change, because of this missing dependency which comes only with the CDT PR 1088
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't know how we could avoid this break.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I also retested by building this patch with mvn verify and installing it into 2024-12 C/C++. The banner appears on CDT LSP editor, and not on CEditor.
Okay, the compiled jar file is executable in conjunction with CDT version < 12?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes. Cdt 12 is required for build, older cdt works at runtime.
If it is a hard requirement to build with cdt 11 we can ditch osgi for just that interface, and use a Function instead as the interface between CEditor and lsp
Lmk
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
No, its just important for us at run time because we cannot update our IDE at the moment and I still want to use the cdt-lsp latest builds.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
Not intended. I will spin it up on Windows to see what to do about it. |
Now fixed. Sadly SWT's emoji handling on Windows makes the sparkles less sparkly. Its not something I can fix. LMK if the sparkle emoji use should be removed on Windows, or even on all platforms. |
I tested on macOS and it all looks good there too. |
I think the less sparkling banner is better than nothing. @jonahgraham thank you! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I have squashed and rebased on main. Once the build reports back this will be merged and I will contribute a build to SimRel later today for 2025-03 M3
* | ||
* @since 3.0 | ||
*/ | ||
List<PreferenceMetadata<?>> defaults = List.of(// |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@ruspl-afed to take advantage of #425 I added the defaults here too.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Wrong link - should have been #431
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
oops. I just merged #432
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
sorry, I wasn't aware that you are planning change exactly in the same area @jonahgraham
I think it would be nice to have #425 in that build as well. What about #410 @ruspl-afed ? |
+1. Also now that #432 is merged, I'll rebase this change. |
Contribute a banner to the CEditor and CLspEditor to promote the new C/C++ editing experience based on LSP. The banner in CEditor enables a quick switch to the LSP editor:  And in the CLspEditor it enables a quick switch back to the traditional CEditor.  If there is no project specific setting for `prefer_lsp` a quick confirmation dialog is displayed with options for help and feedback:  and the other way:  If the editor is open on a specific project and that project has project specific preferences for `prefer_lsp`, instead of automatically changing the setting, the property page is opened:  A notification is also displayed to the user for a short while after the editors are re-opening offering more information and access to the preferences.  A notification is also displayed when closing the banner allowing the user easy access to disable opening the banner on new editors  Finally a new preference is available:  Fixes eclipse-cdt/cdt#968
I got a green tick - so I am going for the merge. |
Contribute a banner to the CEditor and CLspEditor to promote the new C/C++ editing experience based on LSP. The banner in CEditor enables a quick switch to the LSP editor:
And in the CLspEditor it enables a quick switch back to the traditional CEditor.
If there is no project specific setting for
prefer_lsp
a quick confirmation dialog is displayed with options for help and feedback:and the other way:
If the editor is open on a specific project and that project has project specific preferences for
prefer_lsp
, instead of automatically changing the setting, the property page is opened:A notification is also displayed to the user for a short while after the editors are re-opening offering more information and access to the preferences.
A notification is also displayed when closing the banner allowing the user easy access to disable opening the banner on new editors
Finally a new preference is available:
Fixes eclipse-cdt/cdt#968