Skip to content

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

Closed

Description

@taleinat
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']

    Activity

    1. taleinat commented on Jun 6, 2019

      @taleinat
      ContributorAuthor

      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.
      
    2. taleinat commented on Jun 6, 2019

      @taleinat
      ContributorAuthor

      See proposed fix in #58077.

    3. taleinat commented on Jun 7, 2019

      @taleinat
      ContributorAuthor

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

    4. miss-islington commented on Jun 7, 2019

      @miss-islington
      Contributor

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

    5. miss-islington commented on Jun 7, 2019

      @miss-islington
      Contributor

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

    6. taleinat commented on Jun 7, 2019

      @taleinat
      ContributorAuthor

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

    7. terryjreedy commented on Jun 7, 2019

      @terryjreedy
      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.

    8. taleinat commented on Jun 8, 2019

      @taleinat
      ContributorAuthor

      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

    9. terryjreedy commented on Jun 8, 2019

      @terryjreedy
      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.

    10. transferred this issue fromon Apr 10, 2022
    Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

    Metadata

    Metadata

    Assignees

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions