-
-
Notifications
You must be signed in to change notification settings - Fork 2.7k
Inspector window: allow Watch table column resizing + clean & polish layout #4531
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
Conversation
… of the Inspector Window: fix vertical alignment problems, correct small offset inconsistencies, and clean up warnings in Interface Builder.
c231211
to
678af29
Compare
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.
Thanks for taking this one. This is an important issue. To me it is almost a bug that you currently can't resize the columns.
3 issues.
First issue. Us programmers are used to "property key". Not sure the public is. When you add something to the table the IINA prompt asks for mpv property name
. So I don't think the name of the first column should be Key
. Since we use Name
for the column that contains the option in Advanced
settings, I'm thinking that is the correct choice. The other choice would be Property
.
Second issue. When the window first came up the column containing the property was small and truncating the names despite all the space we have to work with. When possible the columns should be initially sized appropriately.
Third issue. Resizing the first column introduced a scroll bar, which seems odd given the values in the table are so small compared to the available space:
…to Name, add i18n for column names and error token, add styling for error token, fix column sizing/scroll bar issues based on feedback
9c562fb
to
f686a3b
Compare
Changed to Name.
I added a bit more default width to the Name column. I'm just not sure too much extra space will be needed in most cases, because all the property names I came up with could easily fit, although I'm not at all an expert in mpv properties and their values. At least the column widths will be remembered across launches. Also, I think the actual width of the window will vary depending on the length of some of the fields. Edit: Looks like this can't really be avoided without allowing text to wrap...
I think I fixed it - please confirm. Also:
|
The latest commit seems to have fixed my concerns. For some reason the table seems to be messing up the cursor shown when changing column width. Not sure what is causing that. My guess is the other reviewers will not like the changes to the localization files. The usual issue with disrupting Crowdin automation. |
Argh. I now see visual artifacts with style |
Mostly I wanted to make sure the oddity with the cursor was AppKit and not something we were doing. Seems to me some AppKit programmer was lazy and did not properly use the resizing cursors. I have always thought tables should look is shown with I brought this over to my MacBook Air running Catalina and the behavior changed. Under Catalina the table acts and looks just like what is shown above with On Thumbs up from me for the changes as is, BUT I am certain the PR will be rejected due to including the translation files for other languages. They have gotten serious about that. I have not forgotten about the base/en issue and how the en translation files are not needed. People have been busy with the current release. 1.3.3 just got released. At some point soon attention will move to the next release which is planned to be the feature release that has been talked about for some time. |
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 pulled the latest commits, build IINA and tested under macOS Ventura and macOS Catalina. Major improvement to support resizing of the table columns.
Leaving it to other reviewers to comment on the inclusion of the language localization files.
e329d65
to
57e275c
Compare
57e275c
to
6b1f71d
Compare
So, couple things... @low-batt was hard to tell if you were endorsing the Fulll-Width style or Automatic. I prefer the Full-Width, despite the cursor oddity. There is another, more serious problem which I discovered, and I made several pushes thinking I had fixed it (and also other things), only to ultimately have to admit defeat and roll back, having run out of time... There's a problem coming from the translucent background for the table. There are color glitches. It only presents itself if once you try to horizontally scroll. The background of the header suddenly brightens. It looks even worse if you then resize the window: If I clear out the table background and show just the header, like this, the problems are gone. But not sure if it is the desired look, and it visually separates the table from the +/- buttons. |
I liked the one where the For the latest issues you brought up I have to defer to the other developers. I too am unsure what they would prefer. |
5f9adac
to
9e3db0a
Compare
Much soul-draining trial & error later, I have found solutions & workarounds. I was able to get a bug-free translucent background by enclosing the table inside a container view, and adding a translucent background to that. Hooray. I also made some progress on figuring out the arcane way column sizing is done. I was able to make the Also added animations when inserting & deleting rows (respecting the "Reduce Motion" pref) - was not hard and looks nice. Lastly I discovered another problem caused by using translucent headers. If there are enough entries and the table starts to scroll down, |
…. Improve minimum tab content sizes so that window size changes less between tabs. Add workaround to Watch table to avoid scroll defect.
9e3db0a
to
c06db7d
Compare
The new look of the TableView is cool! I just tried by rebasing the branch to develop. Just a small thing to add, could you make the TableView multiple selection? It would be convenient to remove multiple entries. |
Done - take a look at the latest commit. |
Description:
Window layout changes:
NSTextView
s with "firstBaseline" constraints.Watch table changes:
Name
andValue
column headers to the "Watch" table in the "Status" tab, and made the first tab resizable and saveable, and the second tab set to scale to the size of the window (fixing Inspector pallet: entries in the Status/Watch section are truncated #4521).Value
column won't get hidden.NSTableView
bugs: Make table view-based, add custom column headers, reimplement background translucency. Make table expand the window vertically instead of scrolling to avoid overlapping views issue.Error
entries to remove brackets, add italic & grayed text.Final product: