-
-
Notifications
You must be signed in to change notification settings - Fork 32k
Redesign Help => About IDLE, make it non-modal #69001
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
Comments
No reason for it to be modal. Especially on OS X (where it really isn't...) |
I am broadening this to include re-evaluation of everything under Help. There are other issues for search on config. |
Or we can broaden this in the other direction, to redesign AboutDialog. |
Have attached about.patch, which changes the about dialog to no longer be modal, as well as does a substantial redesign, where the various help texts are displayed within the dialog itself, rather than launching (further modal) new windows. Note: this new dialog works on both Tk 8.4 and 8.5+ |
The proposed patch does several things that can be considered independently.
Mozilla FireFox and Thunderbird are obnoxiously semi-modal. Steam launcher is fully modal, with an icon added to the Taskbar, so one can easily find the window to close it. Any patch must make sure this happens. Clicking About Steam menu entry a second time lifts the first window to view. The patch imitates this. To me, the main justification to go non-modal is that About IDLE opens documents in custom read-only windows rather than in a browser. README is one that one might want to keep open for awhile. Ditto for a future Roadmap file.
A. What the patch does not do is switch from buttons to blue-underlined links, as I have discussed elsewhere, nor do other rearrangements and changes. I want to move What's New to the top, move the Python license and copyright to the bottom, and remove Python credits. The idle-dev email must be replaced with a link to the idle-dev subscription page, as spam (which continues) prompted a switch to subscription required. This will be a separate issue. |
Cheryl, I suggest to start with any of 1, 3, and 4. My preference is 3. To be sure of avoiding merge conflicts, I would do one at a time. Narrowly focused PRs should be quick to review, test, and merge. |
I submitted a PR for #3. In Mark's patch, he had moved the existing text, email, docs, etc to column 1 instead of column 0 for better looking alignment. I can add that part of the redesign, but for now I just added the icon. |
I experimented with how the icon looks with different backgrounds, for point 4. Because the paper holes are transparent, white is bad, proposed light gray okay, black is good. Overall white on black is better than white on current dingy gray, so I consider making the background darker rather than flipping colors a possibility. I would suggest using user's color scheme (which has be requested for dialog in general) except that icon on white looks so poor. The htest makes experimenting easy. If you get to 4, give your opinion. Another option would be to redo the two files. They are private copies and I believe not used otherwise. |
I submitted a PR for #1. For #4, I had a question to this related to ttk widgets. When I had moved the widgets to ttk, I had to remove the fg and bg settings because the ttk versions of Label, Frame, and Widget don't have those as part of their config. Do you want me to work on changing the colors without worrying about the ttk versions for now? |
tk Text does not have a ttk version and does have default and tab settable colors. Maybe I should start experimenting with tagged text instead of Labels and Buttons. Let's skip 4 for now. You can work on 'default non-model' (I don't want to toss the modal code quite yet), or do something else, like configdialog. At the moment, I would prefer the latter. |
There is something more I want to add: the bitness of the machine. >>> platform.architecture()
('64bit', 'WindowsPE') Display as '(64 bit)' or '(32 bit). For the moment, add this to the title since it will not necessarily fit after python version. See the doc note about Macs. The reason has to do with import problems people report on Stackoverflow. One possible reason is having multiple interpreters, only some of which have a 3rd party module. Another is mismatched architecture. At the same time, change the fg/bg to Mark's suggestion. |
Please run the full test suite to see if it ends with a warning about test_idle altering something. I cannot because of bpo-30715. I usually save and restore original objects when mocking, but I don't really know when this is and is not needed. |
I had run the full test before pushing the changes without any messages. I didn't run it with any options though.
OK I wasn't sure about saving mocked objects either. I thought maybe it was related to the GUI mocks. Should I ask about it on core mentorship? |
I should have been clearer - the full *python* test suite, not just IDLE, an with gui available -- "python -m test -ugui". I don't think the check is applied with just one file, and definitely not with 'test.test_idle' versus 'test -ugui test_idle'. The former runs test_idle with unittest.main instead of test.regrtest, which calls unittest.main but adds extra stuff. Evading this issue is why I sometimes copy a method to be tested to a mock class with mock methods needed for the tested method. |
--snip-- 389 tests OK. 1 test failed: 16 tests skipped: Nothing from idle: |
There are no *nix buildbots running gui tests. Please run |
Sometimes that test fails and sometimes it doesn't, even if I run it several times in a row. When it does fail, it runs a lot longer than when it doesn't. So, I'm trying to figure out the difference before reporting it. Since the failure takes time, I'm thinking it might be resource contention of some sort. |
You should have enough data to open an issue; make Serhiy Storchaka (and me) nosy. Does the same test fail consistently or not? % of failures. When it takes longer, is there a particular place in the stream of results where it pauses? When I run it on master, it consistently takes 3 seconds, and there is a deprecation warning that I think should be caught in the test. |
Created bpo-30756. On Sun, Jun 25, 2017 at 2:10 PM, Terry J. Reedy <[email protected]>
|
Is this the re-arrangement? A. What the patch does not do is switch from buttons to blue-underlined links, as I have discussed elsewhere, nor do other rearrangements and changes. I want to move What's New to the top, move the Python license and copyright to the bottom, and remove Python credits. The idle-dev email must be replaced with a link to the idle-dev subscription page, as spam (which continues) prompted a switch to subscription required. This will be a separate issue. Sounds like you want to make the change, but let me know if you'd ike me to take a shot at it. |
FYI, just added a trivial pull request to change the tagline in the about dialog to 'integrated development and learning environment'. It's showing up as from python-dev as I hadn't (yet) added my github name to my bpo prefs. Got to start somewhere! |
Still needs to make non-modal and consider other ideas. |
Instead, anyone requesting credit should submit a PR with contribution summary. (Also fix typo in existing name.)
…9588) Instead, anyone requesting credit should submit a PR with contribution summary. (Also fix typo in existing name.) (cherry picked from commit 76e0182) Co-authored-by: Stan Ulbrych <[email protected]>
…9588) Instead, anyone requesting credit should submit a PR with contribution summary. (Also fix typo in existing name.) (cherry picked from commit 76e0182) Co-authored-by: Stan Ulbrych <[email protected]>
…#129714) Instead, anyone requesting credit should submit a PR with contribution summary. (Also fix typo in existing name.) (cherry picked from commit 76e0182) Co-authored-by: Stan Ulbrych <[email protected]>
…#129713) Instead, anyone requesting credit should submit a PR with contribution summary. (Also fix typo in existing name.) (cherry picked from commit 76e0182) Co-authored-by: Stan Ulbrych <[email protected]>
Instead, anyone requesting credit should submit a PR with contribution summary. (Also fix typo in existing name.)
Instead, anyone requesting credit should submit a PR with contribution summary. (Also fix typo in existing name.)
In Lib/idlelib/help_about.py, there are 2 links that are not underlined or colored, hence hard to tell that clicking works. All buttons might get converted to colored and underlined links in the future. --------- Co-authored-by: Terry Jan Reedy <[email protected]>
In Lib/idlelib/help_about.py, there are 2 links that are not underlined or colored, hence hard to tell that clicking works. All buttons might get converted to colored and underlined links in the future. --------- (cherry picked from commit ed831b9) Co-authored-by: Stan Ulbrych <[email protected]> Co-authored-by: Terry Jan Reedy <[email protected]>
In Lib/idlelib/help_about.py, there are 2 links that are not underlined or colored, hence hard to tell that clicking works. All buttons might get converted to colored and underlined links in the future. --------- (cherry picked from commit ed831b9) Co-authored-by: Stan Ulbrych <[email protected]> Co-authored-by: Terry Jan Reedy <[email protected]>
…30339) gh-69001: Convert links to more usable buttons (GH-129591) In Lib/idlelib/help_about.py, there are 2 links that are not underlined or colored, hence hard to tell that clicking works. All buttons might get converted to colored and underlined links in the future. --------- (cherry picked from commit ed831b9) Co-authored-by: Stan Ulbrych <[email protected]> Co-authored-by: Terry Jan Reedy <[email protected]>
…30338) gh-69001: Convert links to more usable buttons (GH-129591) In Lib/idlelib/help_about.py, there are 2 links that are not underlined or colored, hence hard to tell that clicking works. All buttons might get converted to colored and underlined links in the future. --------- (cherry picked from commit ed831b9) Co-authored-by: Stan Ulbrych <[email protected]> Co-authored-by: Terry Jan Reedy <[email protected]>
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:
bugs.python.org fields:
Linked PRs
The text was updated successfully, but these errors were encountered: