In #2130321: Fatal errors when editing issues with large number of comments (300+?) - cannot be edited nor can comments be added the Javascript for forums pages and api.drupal.org runs to check if the table if bigger than the content area and then expands the content area to fit it.
We don't want it to run on any other pages apart from api and forum. That's what this patch does.
Known word-wrapping problems:
File fields on issuesNode changes on issues- Forum listings - currently always breaks mid-word
- API.Drupal.org listings
| Comment | File | Size | Author |
|---|---|---|---|
| #18 | files-table-max-width.jpg | 273.23 KB | markhalliwell |
| #11 | bluecheese-table-break-2228139-11.patch | 594 bytes | lewisnyman |
| bluecheese-table-break-1.patch | 579 bytes | lewisnyman | |
| Screenshot 2014-03-28 14.13.07.jpg | 291.16 KB | lewisnyman |
Comments
Comment #1
drummLarger tables can happen all over the site, those are just reliable examples for finding potentially layout-breaking tables. Instead, we should make the tables more narrow. How about something like:
If #2225355: Make tables responsive is able to ensure tables don't break out of their container, then the JS can be removed completely.
Comment #2
drummComment #3
lewisnyman@drumm Yeah we discussed this the other day, it possible that on some api.drupal.org pages the tables will collapse even on desktop 0_0
Comment #4
dddave commentedI guess this is happening here? https://drupal.org/node/2159541
Comment #5
drummThe wide table in #2159541: Notice: Undefined property: stdClass::$title in flexslider_entityreference_field_formatter_settings_summary() is the title change in comment #2. It could be tackled in a similar way as I proposed for the files table in #1.
Comment #6
drummI noticed
word-wrap: break-word;is used on issue queue tables. That actually looks ideal. I don't know if it needs to be combined withmax-widthor not.If we can handle all tables with wide words with CSS, then the JS can be removed completely.
Comment #7
dddave commentedMmmh, this just came up in the webmaster queue #2248067: Issue too wide not sure if same but different or just different.
Comment #8
drummWe can tackle both types of table on issue pages in this issue. They will have similar CSS to deal with wide content.
Comment #9
dddave commentedComment #10
drummword-wrap: break-word;should also be applied to URLs under the logo on organization pages, such as https://www.drupal.org/node/1237520.Comment #11
lewisnymanHere's a patch I tested on:
https://responsive-drupal.redesign.devdrupal.org/node/2227869
Comment #12
lewisnymanComment #14
drummGreat, let's use this issue to totally remove the table spacing JS.
Comment #15
drummComment #16
drummNow deployed.
Comment #17
drummComment #18
markhalliwellThe first ruleset is not specific enough. It also restricts the table inside the files fieldset at the bottom of issues:

Also, I'm not entirely sure why a max-width is used here. Surely there must be a better solution than this. At the very least, wouldn't
max-width: 100%work instead of such a very specific and arbitrary pixel size?Comment #19
lewisnymanHere's a more specific selector that works without side effects:
It doesn't, I tried that first :'(
Comment #21
drumm#20 should fix #19.
Comment #22
drummComment #24
mgiffordSo am I right in that these are the items which are outstanding:
- Node changes on issues - https://www.drupal.org/node/2056089/revisions
- Forum listings - https://www.drupal.org/forum/
- API.Drupal.org listings - https://api.drupal.org/api/drupal/groups
I'm not certain that those links are right, but wanted to have a quick way to evaluate.
I'm just not certain what we need to do to close this issue.
Comment #25
mgiffordduplicate
Comment #29
drummFor Node changes on issues, this is now not causing layout issues, but looks like it is always breaking mid-word. If possible, it should try to break on words, and break mid-word when necessary.
Comment #30
drummThe same is true of forum listings.
Comment #31
drummRetitling since the JS is gone, and we still have a couple places to clean up.
https://kenneth.io/blog/2012/03/04/word-wrapping-hypernation-using-css/ looks like a good strategy for wrapping long words in dynamically-sized containers. Removing the need to hard-code a width, as mentioned in #19.
https://drumm-drupal.redesign.devdrupal.org/node/2355909 is an example of this running right now.
Comment #32
drummComment #34
drummI am deploying these changes for issue pages shortly.
Comment #35
drummNow deployed.
Comment #37
drummtoboggan-api.redesign.devdrupal.org has the improved line wrapping in tables.
The table columns do get quite narrow, so I refactored the JS to kick in the mobile table styles when a full-width views table gets less than 500px wide on the site.
Comment #40
drummThe last few commits fix this.
In http://cgit.drupalcode.org/bluecheese/commit/?id=e946b94, I refactored the JS to be a single file, and more flexible about when to make specific tables responsive.
Comment #41
drummNow deployed.