Skip to content

gh-94520: Make CallTips selectable in IDLE - #143029

Open
znsoooo wants to merge 11 commits into
python:mainfrom
znsoooo:main
Open

znsoooo wants to merge 11 commits into
python:mainfrom
znsoooo:main

Conversation

@znsoooo

@znsoooo znsoooo commented Dec 20, 2025 •

Copy link
Copy Markdown
Contributor

Issue: #94520

The text display widget in the "CalltipWindow" has been changed from "tk.Label" to "ScrolledText", and now the text in the "Calltip" window can be selected with mouse.

The display size of the "CalltipWindow" is set to the smaller value between the size when using the "tk.Label" widget and the default size of "tk.Text".

When the displayed text exceeds the display area of the "ScrolledText" window, showing the vertical scrollbar; otherwise, hiding the scrollbar.

Since more text can be displayed, "argspec" is no longer truncated, and the tests related to the max lines or text truncation have been removed from the unit tests.


I'm sorry for the long delay due to moving house, many data on my computer was lost, it tooks me a very long time to reorganize. But now we can restart.

@znsoooo
znsoooo requested a review from terryjreedy as a code owner December 20, 2025 22:26
@python-cla-bot

python-cla-bot Bot commented Dec 20, 2025 •

Copy link
Copy Markdown

All commit authors signed the Contributor License Agreement.

CLA signed

@picnixz picnixz changed the title gh-94520: Make CallTips selectable gh-94520: Make CallTips selectable in IDLE Dec 25, 2025

@picnixz picnixz left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't understand why the splitting algorithm got changed as well and why some tests were removed.

Comment thread Lib/idlelib/idle_test/test_calltip.py
Comment thread Lib/idlelib/idle_test/test_calltip.py
Comment thread Lib/idlelib/idle_test/test_calltip.py

@unittest.skipIf(MISSING_C_DOCSTRINGS,
"Signature information for builtins requires docstrings")
def test_multiline_docstring(self):

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why are we removing this test?

@znsoooo znsoooo Dec 26, 2025 •

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In the old tests, the first blank line was used as a separator, and the text after the first blank line was not displayed. However, now that I use the "ScrolledText" widget to display the document. So it is easy to show very long text, so I'm not limit the display to the content before the first blank line.
Do you have any suggestions? Do I need to keep this feature unchanged?

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

So, to say:

  • Before we only showed partial signature.
  • Now we can show the full signature. So old tests are no more needed.

I would advise to keep tests that check whether multiline signatures from builtins are also correctly shown

Comment thread Misc/NEWS.d/next/IDLE/2025-12-21-07-02-44.gh-issue-94520.lqenne.rst Outdated
@bedevere-app

bedevere-app Bot commented Dec 25, 2025

Copy link
Copy Markdown

A Python core developer has requested some changes be made to your pull request before we can consider merging it. If you could please address their requests along with any other requests in other reviews from core developers that would be appreciated.

Once you have made the requested changes, please leave a comment on this pull request containing the phrase I have made the requested changes; please review again. I will then notify any core developers who have left a review that you're ready for them to take another look at this pull request.

@znsoooo

znsoooo commented Dec 27, 2025

Copy link
Copy Markdown
Contributor Author

I have made the requested changes; please review again. @picnixz Thanks.

@bedevere-app

bedevere-app Bot commented Dec 27, 2025

Copy link
Copy Markdown

Thanks for making the requested changes!

@picnixz: please review the changes made to this pull request.

@bedevere-app
bedevere-app Bot requested a review from picnixz December 27, 2025 11:17
Comment thread Lib/idlelib/calltip.py Outdated
Comment thread Lib/idlelib/calltip_w.py Outdated
Comment thread Lib/idlelib/calltip_w.py Outdated
Comment thread Lib/idlelib/calltip_w.py Outdated
Comment thread Lib/idlelib/calltip_w.py Outdated
Comment thread Misc/NEWS.d/next/IDLE/2025-12-21-07-02-44.gh-issue-94520.lqenne.rst Outdated
@picnixz
picnixz dismissed their stale review December 27, 2025 11:36

Changes were addressed

znsoooo and others added 4 commits December 27, 2025 20:41
…e.rst

Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com>
Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com>
Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com>
@znsoooo

znsoooo commented Dec 27, 2025

Copy link
Copy Markdown
Contributor Author

@picnixz Thanks for your advices. I have made the requested changes; please review again.

@bedevere-app

bedevere-app Bot commented Dec 27, 2025

Copy link
Copy Markdown

Thanks for making the requested changes!

: please review the changes made to this pull request.

@znsoooo

znsoooo commented Jan 10, 2026

Copy link
Copy Markdown
Contributor Author

@picnixz Excuse me, how long it usually takes for the core review of this PR? or is there anything else I need to prepare?
Because I have other contributions want to submit, but currently my forked repository is occupied, so I wanted to ask about this.
Thank you!

@picnixz

picnixz commented Jan 10, 2026

Copy link
Copy Markdown
Member

It depends; it can usually take months before merging a PR. I don't have much time for reviews.New features PRs are usually taken care of before the last alpha and last alpha for 3.15 would be in May. I have other more pressing matters that I need to address this w-e.

Because I have other contributions want to submit, but currently my forked repository is occupied

Why not create another branch?

@picnixz

picnixz commented Jan 10, 2026 •

Copy link
Copy Markdown
Member

@terryjreedy Could you review this one please if you have enough time?

@znsoooo

znsoooo commented Jan 10, 2026

Copy link
Copy Markdown
Contributor Author

Why not create another branch?

@picnixz I’m currently learning the GitHub PR submission workflow and I’m not very proficient with the basic operations.

It seems that I can submit multiple PRs via multiple branches, but when I forked the repository, I forgot to create a new branch, I made my commits directly on the "main" branch. If I sync with the upstream repository, it will update this PR and then trigger a new round of CI/CD, right?

Maybe I should have created a "dev" branch first before starting development and submitting a PR. However, I messed up the initial steps and have no idea how to exchange it. I’ll try the right way when I submit another PR next time.

@github-actions

github-actions Bot commented May 4, 2026

Copy link
Copy Markdown

This PR is stale because it has been open for 30 days with no activity.

@github-actions github-actions Bot added the stale Stale PR or inactive for long period of time. label May 4, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

awaiting core review stale Stale PR or inactive for long period of time.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants