Commit Graph

1800 Commits

Author SHA1 Message Date
narcolepticinsomniac
dabd641f75
Custom UI elements 2017-12-06 22:34:39 -05:00
narcolepticinsomniac
7f32630b09
Custom UI elements 2017-12-06 22:27:54 -05:00
narcolepticinsomniac
e0c29f39f7
Custom UI elements 2017-12-06 22:27:00 -05:00
narcolepticinsomniac
d52ccc3e28
Custom UI elements
I regret calling these "easy CSS fixes". No CSS is easy in FF. Button text vertical alignment appears to be a foreign concept in FF. Even their default buttons have all text 1px lower than centered. When you customize them, about 50% require one padding rule, and the other 50% a different padding rule. Even tried losing top/bottom padding and setting a hard height/line-height and it still shits its pants. If there was some simple way to make them consistent, it wasn't obvious to me, but I'm pretty sure I fixed them all. This bug is strictly Windows, Linux requires only the one rule. Windows stable, beta, and Nightly all behave the same, so at least the workaround is consistent. ESR behaves the same, but requires different rules for each, also accounted for. Tested in Chromium/Linux Chromium, Opera and Vivaldi, and the one normal padding rule works for all. 

As for the buttons themselves, I think I've mimicked Windows Chromium buttons pretty well. As I mentioned, I recreated the subtle gradient using a transparent image, so we can put a slight transition on hover bg color. Hovers are smoother and slightly more obvious than the defaults, but nothing too drastic.

Regarding Linux, now that inputs and buttons are customized, the only thing preventing our UI from being 99.9% identical is the font issue. Shouldn't be too difficult, but I'm not sure what the most efficient way to load Arial would be. The number inputs are mostly stylable, except for the actual arrows, which are terrible in Linux FF. I've styled them to look normal, and set the arrows to be hidden unless the input is hovered or focused. They're rarely used, so at least they won't muck up the UI when they're not in use. I also abandoned trying to eliminate the dotted border inner text focus bullshit. I swear that one rule worked the other day, but turns out it doesn't. They actually render it according to text color. There are terrible hacks setting focused text to transparent and resetting text color with text shadow. They're buggy and shitty, so not worth implementing. No idea why they only still do this in Linux, but I guess they're used to it. Users who hate it probably figure out a config switch or some other workaround.

Didn't put a lot of effort into text inputs, but they all look fine in every browser/OS tested. We can tweak any properties to achieve the same styling if necessary. Only one styled differently is the manager search input, because it looks better shorter. In the search input, typed text and the clear "X" look 1px low vertically, which can't really be solved with padding, or the placeholder text becomes off center. This was the case with the previous CSS as well. NBD, but it'd be nice to fix. Double-check any obscure popups which may contain inputs/buttons I might've missed, particularly usercss shit.

I also found an unrelated Vivaldi bug. It fails to calculate the width of filter selects correctly on the initial page load. They only appear correctly after reloading the page. We set a max-width instead of any width property so they resize dynamically depending on the current selected option text. Works fine in all other browsers, so I don't wanna break it for a Vivaldi bug. Vivaldi has no special browser class, but it'd be nice if it did so we could only break dynamic resizing in Vivaldi to circumvent their bug.
2017-12-06 22:25:51 -05:00
tophf
aeca16f663 csslint: show real text of expected token if possible
now instead of the nerdy LBRACE users will see {
2017-12-07 05:37:36 +03:00
tophf
7a07ee9fd9 unbreak narrow editor layout 2017-12-07 05:31:42 +03:00
tophf
9c8e835a80 relay scrolling over #header to usercss code section 2017-12-07 04:36:46 +03:00
tophf
d4ffa04bb6 raise applies-to widget above .CodeMirror-activeline 2017-12-07 04:00:26 +03:00
tophf
b96cee1012 use Event#key for hotkey recognition in manager and popup
should help #286
2017-12-07 02:11:50 +03:00
tophf
119a3803ec realign #only-updates filter and rename as it's not linked to prefs 2017-12-07 01:39:15 +03:00
tophf
ebef35c28c drop linter name from "see all rules" and make it a link 2017-12-07 01:21:05 +03:00
tophf
d998fb235a center editor config icons 2017-12-07 01:20:04 +03:00
tophf
38e0937f45 config dialog tweaks
* same icon in manager
  (didn't change the editor config icons as those aren't for usercss)

* "external" icon for USO styles to avoid confusion
  (opening a tab is an extremely different action)

* smaller paddings in popup

* removed hover effect on label text
  (necause native <select> elements cannot be expanded from js)

* various fixups
2017-12-07 01:07:55 +03:00
tophf
543132aafa auto-apply on changes - new option in usercss config 2017-12-06 23:33:48 +03:00
tophf
945ec5604d don't overwrite button padding globally in old FF
...since it breaks custom ones
2017-12-06 22:42:34 +03:00
tophf
f337e18515 recognize usercss @updateURL
* installation URL is preferred - same behavior as before

* @updateURL is used when the style was drag'n'dropped into the manage page
  because there's no real URL in this case

* install-usercss page shows the new update URL, which is set as per the above,
  under the checkbox that enables updates
2017-12-06 22:35:19 +03:00
tophf
0659ff6233 set "use default" button actual state on opening config dialog 2017-12-06 11:35:04 +03:00
tophf
1273903b05 import usercss files drag'n'dropped into the manage page 2017-12-06 11:03:43 +03:00
tophf
cc57d39443 align #filters header; group FF-related rules 2017-12-06 10:37:01 +03:00
tophf
e3a67351d5 make protected tokens language-agnostic in search help message 2017-12-06 10:23:28 +03:00
tophf
03b6f6c263 manage: search regexps, add search help, fix favicons toggle icon
* the toggle icon is now a triangle, rotated when open
2017-12-06 09:39:45 +03:00
tophf
69ee57f88f manage: search in usercss full source code 2017-12-06 06:34:02 +03:00
tophf
974b1f9152 csslint: don't throw on errors caused by USO vars 2017-12-06 06:34:02 +03:00
tophf
8f9705c165 recognize USO vars ending with -rgb 2017-12-06 06:34:02 +03:00
tophf
aa44077212 rename #newStyleAsUsercss-wrapper to a standard CSS scheme 2017-12-06 06:34:01 +03:00
tophf
a712d92b52 fixup db621b86: add .active class only to the block title 2017-12-06 04:21:30 +03:00
tophf
31941110e8 manage: show "x" icon after #filters-stats to reset active filters
implements #286
2017-12-06 04:18:51 +03:00
tophf
579ffcc68d removed the extra tag 2017-12-06 03:34:53 +03:00
tophf
30aeb8d2c4 don't fade popup config dialog backdrop as it looks glitchy 2017-12-06 03:16:53 +03:00
tophf
e776a45dfa allow continuous tweaking in usercss config dialog
* don't close on clicking "save" to allow continuous tweaking
* dirty item's label is marked with * and switches to italic
* "save" button is enabled when some value differs from saved
* "use default" button is enabled when some value differs from its default
* "close" becomes "cancel" when there are unsaved changed values
2017-12-06 03:03:50 +03:00
tophf
de74c70778 actually use selected values in popup config dialog 2017-12-06 01:17:22 +03:00
tophf
85c67872a5 make colorpicker notify embedder on closing
re-enables Esc key in config-dialog after colorpicker closed itself due to an outside click
2017-12-06 00:24:27 +03:00
eight
07a0518586 Add config dialog to popup (#283) 2017-12-06 00:14:21 +03:00
Rob Garrison
db621b8657 Manage: Make filter & backup containers collapsible 2017-12-06 00:09:56 +03:00
tophf
44ce51e54f dim regexp-tester note and avoid extending the report width 2017-12-05 22:12:04 +03:00
tophf
61003b378c usercss editor: show all section regexps in tester 2017-12-05 21:52:24 +03:00
tophf
963930ea1d usercss editor: restore "Add" and "Regexp test", convert \ in regexps 2017-12-05 21:32:28 +03:00
tophf
36ec8de04f stop calc when color is opaque 2017-12-05 21:01:32 +03:00
tophf
bd0f460c56 usercss editor: use real theme color for inputs in widgets 2017-12-05 21:01:32 +03:00
tophf
69736ef5a1 FF: de-blur svg icons 2017-12-05 21:01:10 +03:00
tophf
fe4be8d5db actually keep "[x] as userccs" together 2017-12-05 21:00:12 +03:00
narcolepticinsomniac
82e45460fa
Remove obsolete selector which hid filters when lowest max-width media-screen kicked in 2017-12-05 08:41:05 -05:00
narcolepticinsomniac
93a8f99b12
Keep FF garbage separate 2017-12-05 07:50:49 -05:00
narcolepticinsomniac
e61877b9f9
Style disabled checkboxes, and use currentColor for select text/arrows
Select text color needs to be specified to override system color in Linux. Also got rid of he stupid dotted line around focused element text which still occurs in Linux FF.
2017-12-05 06:23:07 -05:00
tophf
2b22494f3f move style elements after head/body regardless of prior stuff
fixes #284
2017-12-05 08:50:07 +03:00
tophf
edfca7bfed match-highlighter-helper: do nothing when disabled 2017-12-05 07:40:28 +03:00
tophf
3bf0f7e2f8 FF: ensure styles are ordered correctly in background tabs
should probably help #284
2017-12-05 06:27:51 +03:00
tophf
3e34c77625 clear previous token/selection highlight from scrollbar 2017-12-05 05:40:33 +03:00
tophf
8e992299c6 clear previous search highlight from scrollbar in all sections 2017-12-05 05:40:27 +03:00
tophf
cb7f1de348 use hyphens when breaking words (works only in FF though) 2017-12-05 05:02:28 +03:00