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

IDLE: Search dialogs can be hidden behind the main window #81358

Closed
taleinat opened this issue Jun 6, 2019 · 9 comments
Closed

IDLE: Search dialogs can be hidden behind the main window #81358

taleinat opened this issue Jun 6, 2019 · 9 comments
Assignees
Labels
3.7 (EOL) end of life 3.8 (EOL) end of life 3.9 only security fixes topic-IDLE type-bug An unexpected behavior, bug, or error

Comments

@taleinat
Copy link
Contributor

taleinat commented Jun 6, 2019

BPO 37177
Nosy @terryjreedy, @taleinat, @IrvKalb, @miss-islington
PRs
  • bpo-37177: make IDLE's search dialogs transient #13869
  • [3.8] bpo-37177: make IDLE's search dialogs transient (GH-13869) #13878
  • [3.7] bpo-37177: make IDLE's search dialogs transient (GH-13869) #13879
  • [2.7] bpo-37177: make IDLE's search dialogs transient (GH-13869) #13880
  • Note: these values reflect the state of the issue at the time it was migrated and might not reflect the current state.

    Show more details

    GitHub fields:

    assignee = 'https://github.com/terryjreedy'
    closed_at = <Date 2019-06-07.06:53:57.448>
    created_at = <Date 2019-06-06.16:21:59.779>
    labels = ['3.8', 'expert-IDLE', 'type-bug', '3.7', '3.9']
    title = 'IDLE: Search dialogs can be hidden behind the main window'
    updated_at = <Date 2019-06-08.15:27:31.732>
    user = 'https://github.com/taleinat'

    bugs.python.org fields:

    activity = <Date 2019-06-08.15:27:31.732>
    actor = 'terry.reedy'
    assignee = 'terry.reedy'
    closed = True
    closed_date = <Date 2019-06-07.06:53:57.448>
    closer = 'taleinat'
    components = ['IDLE']
    creation = <Date 2019-06-06.16:21:59.779>
    creator = 'taleinat'
    dependencies = []
    files = []
    hgrepos = []
    issue_num = 37177
    keywords = ['patch']
    message_count = 9.0
    messages = ['344831', '344832', '344898', '344899', '344900', '344902', '344913', '345035', '345051']
    nosy_count = 4.0
    nosy_names = ['terry.reedy', 'taleinat', 'IrvKalb', 'miss-islington']
    pr_nums = ['13869', '13878', '13879', '13880']
    priority = 'normal'
    resolution = 'fixed'
    stage = 'resolved'
    status = 'closed'
    superseder = None
    type = 'behavior'
    url = 'https://bugs.python.org/issue37177'
    versions = ['Python 2.7', 'Python 3.7', 'Python 3.8', 'Python 3.9']

    @taleinat
    Copy link
    Contributor Author

    taleinat commented Jun 6, 2019

    This issue was brought up by Irv Kalb on the idle-dev mailing list.

    I haven't been able to reproduce it exactly as he described, but I have managed to do so otherwise, and remember it happening on occasion on other computers.

    This appears to happen because the dialog windows are not being made transient relative to the main window. I'll have a PR up with a fix in a bit.

    Following is what Irv Kalb sent to the mailing list:

    I teach Python classes using IDLE. The search dialog is a real a problem for new students and me as the teacher. My students and I often get into a scenario where the search dialog gets hidden behind a editing window. When that happens, then you try to make edits in code and nothing happens. This happens to very often. I have learned to look for the hidden search dialog window, but my students get very flustered.

    Simple steps to reproduce (I'm using Python 3.6.1 with IDLE):

    Open a new document.
    
    Enter any code (e.g., a = 1)
    
    Bring up the Search Dialog.
    
    If the Search Dialog is not over the rectangle of the editing window, move it anywhere over the editing window.
        (This step is specifically to reproduce the problem, but this happens very often as students move windows around.)
    
    Search for: a        
    
    Click: Find Next
    
    Click in the editing window (with the intention to make some change)
    

    Results:

    Search Dialog is now hidden behind the editing window.  
        Keystrokes are now ignored in the editing window, even though the editing window appears to have focus.
    User has no idea about how to get out of this situation - unless they have seen it before and know that the Search Dialog is still active behind the current window.
    

    @taleinat taleinat added topic-IDLE 3.7 (EOL) end of life 3.8 (EOL) end of life 3.9 only security fixes type-bug An unexpected behavior, bug, or error labels Jun 6, 2019
    @taleinat
    Copy link
    Contributor Author

    taleinat commented Jun 6, 2019

    See proposed fix in #58077.

    @taleinat
    Copy link
    Contributor Author

    taleinat commented Jun 7, 2019

    New changeset 554450f by Tal Einat in branch 'master':
    bpo-37177: make IDLE's search dialogs transient (GH-13869)
    554450f

    @miss-islington
    Copy link
    Contributor

    New changeset 295fe32 by Miss Islington (bot) in branch '3.8':
    bpo-37177: make IDLE's search dialogs transient (GH-13869)
    295fe32

    @miss-islington
    Copy link
    Contributor

    New changeset 685b806 by Miss Islington (bot) in branch '3.7':
    bpo-37177: make IDLE's search dialogs transient (GH-13869)
    685b806

    @taleinat
    Copy link
    Contributor Author

    taleinat commented Jun 7, 2019

    New changeset 1b57ab5 by Tal Einat in branch '2.7':
    [2.7] bpo-37177: make IDLE's search dialogs transient (GH-13869)
    1b57ab5

    @taleinat taleinat closed this as completed Jun 7, 2019
    @terryjreedy
    Copy link
    Member

    Irv's steps did not work for me either, on Windows, and I do not know how else to reproduce. So I cannot test that this fixes any hiding issue. However, the patch fixes bpo-24039. On Windows, it removes the inoperative minimize button and the unwanted maximize buttom, making the search dialog work like all the other IDLE dialogs I checked.

    @taleinat
    Copy link
    Contributor Author

    taleinat commented Jun 8, 2019

    The issue Irv reported happened on macOS but not on Windows. I've reproduced his issue without this fix, and checked that this fix does indeed fix his issue.

    For future reference, Irv also posted a video showing his issue on YouTube[1] (he sent a link to idle-dev).

    [1] http://www.youtube.com/watch?v=YWDsOEN8qsE

    @terryjreedy
    Copy link
    Member

    I saw the email, thanks for testing.

    Irv, a reminder: All reports of IDLE UI behavior (and some of internal behavior) need to be tagged with OS. Working 'cross-platform' does not mean 'the same across platforms'. In particular, tcl/tk long ago made a decision to adjust to platform conventions (which have sometimes changed ;-). I should have asked 'what OS' when I saw your report.

    @ezio-melotti ezio-melotti transferred this issue from another repository Apr 10, 2022
    Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
    Labels
    3.7 (EOL) end of life 3.8 (EOL) end of life 3.9 only security fixes topic-IDLE type-bug An unexpected behavior, bug, or error
    Projects
    None yet
    Development

    No branches or pull requests

    3 participants