summaryrefslogtreecommitdiff
path: root/qutebrowser/components
AgeCommit message (Collapse)Author
2021-08-26Automatically rewrite enumsFlorian Bruhin
See #5904
2021-08-26Blanket PyQt5 -> PyQt6Florian Bruhin
2021-07-19the backslash is redundant between bracketsAnder Punnar
2021-07-19fix pylint C0301Ander Punnar
2021-07-19make blocking subdomains configurableAnder Punnar
2021-07-12Fix lintFlorian Bruhin
2021-07-12Log debug information on adblock errorFlorian Bruhin
See #6436
2021-06-28Fix lintFlorian Bruhin
2021-06-28Adjust exception handling for adblock 0.5.0Florian Bruhin
See https://github.com/ArniDagur/python-adblock/issues/44
2021-06-24Use anyFlorian Bruhin
2021-06-01Merge remote-tracking branch 'origin/master' into 4nd3r/hostblock_subdomainsAnder Punnar
2021-06-01brave adblock: Handle DeserializationErrorFlorian Bruhin
Fixes #6489
2021-04-09fix pylintAnder Punnar
2021-04-09make _widened_hostnames public, move to urlutilsAnder Punnar
2021-04-08block subdomains of blocked hostsAnder Punnar
2021-03-31Increase vim compatibilityFlorian Bruhin
Vim has this, and it's almost easter, so clearly we should have it too. Also it's from Monty Python, which makes it even more fitting. HEAD KNIGHT: Ni! KNIGHTS: Ni! Ni! Ni! ARTHUR: Who are you? HEAD KNIGHT: We are the Knights Who Say... Ni! ARTHUR: No! Not the Knights Who Say Ni! HEAD KNIGHT: The same! BEDEVERE: Who are they? HEAD KNIGHT: We are the keepers of the sacred words: Ni, Pen, and Ni-wom! RANDOM: Ni-wom! ARTHUR: Those who hear them seldom live to tell the tale! HEAD KNIGHT: The Knights Who Say Ni demand a sacrifice! ARTHUR: Knights of Ni, we are but simple travellers who seek the enchanter who lives beyond these woods. HEAD KNIGHT: Ni! Ni! Ni! Ni! ARTHUR and PARTY: Oh, ow! HEAD KNIGHT: We shall say 'nee' again to you if you do not appease us. ARTHUR: Well, what is it you want? HEAD KNIGHT: We want... a shrubbery! [dramatic chord] ARTHUR: A what? HEAD KNIGHT: Ni! Ni! ARTHUR and PARTY: Oh, ow! ARTHUR: Please, please! No more! We shall find a shrubbery. HEAD KNIGHT: You must return here with a shrubbery or else you will never pass through this wood alive! ARTHUR: O Knights of Ni, you are just and fair, and we will return with a shrubbery. HEAD KNIGHT: One that looks nice. ARTHUR: Of course. HEAD KNIGHT: And not too expensive. ARTHUR: Yes. HEAD KNIGHTS: Now... go! ARTHUR: Old crone! Is there anywhere in this town where we could buy a shrubbery! [dramatic chord] CRONE: Who sent you? ARTHUR: The Knights Who Say Nee. CRONE: Agh! No! Never! We have no shrubberies here. ARTHUR: If you do not tell us where we can buy a shrubbery, my friend and I will say... we will say... `nee'. CRONE: Agh! Do your worst! ARTHUR: Very well! If you will not assist us voluntarily,... Ni! CRONE: No! Never! No shrubberies! ARTHUR: Ni! BEDEVERE: Noo! Noo! ARTHUR: No, no, no, no -- it's not that, it's 'Ni'. BEDEVERE: Noo! ARTHUR: No, no -- 'Ni'. You're not doing it properly. BEDEVERE: Noo! Ni! ARTHUR: That's it, that's it, you've got it. ARTHUR and BEDEVERE: Ni! Ni! ROGER: Are you saying 'Ni' to that old woman? ARTHUR: Um, yes. ROGER: Oh, what sad times are these when passing ruffians can say `Ni' at will to old ladies. There is a pestilence upon this land, nothing is sacred. Even those who arrange and design shrubberies are under considerable economic stress at this period in history. ARTHUR: Did you say `shrubberies'? ROGER: Yes, shrubberies are my trade -- I am a shrubber. My name is Roger the Shrubber. I arrange, design, and sell shrubberies. BEDEVERE: Ni! ARTHUR: No! No, no, no! No! ARTHUR: O, Knights of Ni, we have brought you your shrubbery. May we go now? HEAD KNIGHT: It is a good shrubbery. I like the laurels particularly. But there is one small problem. ARTHUR: What is that? HEAD KNIGHT: We are now... no longer the Knights Who Say Ni. RANDOM: Ni! HEAD KNIGHT: Shh shh. We are now the Knights Who Say Ecky-ecky-ecky- ecky-pikang-zoom-boing-mumble-mumble. RANDOM: Ni! HEAD KNIGHT: Therefore, we must give you a test. ARTHUR: What is this test, O Knights of-- Knights Who 'Til Recently Said Ni? HEAD KNIGHT: Firstly, you must find... another shrubbery! [dramatic chord] ARTHUR: Not another shrubbery! HEAD KNIGHT: Then, when you have found the shrubbery, you must place it here beside this shrubbery, only slightly higher so you get a two-level effect with a little path running down the middle. RANDOM: A path! A path! Ni! HEAD KNIGHT: Then, when you have found the shrubbery, you must cut down the mightiest tree in the forest... with... a herring! [dramatic chord] ARTHUR: We shall do no such thing! HEAD KNIGHT: Oh, please! ARTHUR: Cut down a tree with a herring? It can't be done. KNIGHTS: Aaaaugh! Aaaugh! HEAD KNIGHT: Don't say that word. ARTHUR: What word? HEAD KNIGHT: I cannot tell, suffice to say is one of the words the Knights of Ni cannot hear. ARTHUR: How can we not say the word if you don't tell us what it is? KNIGHTS: Aaaaugh! Aaaugh! ARTHUR: What, `is'? HEAD KNIGHT: No, not `is' -- we couldn't get vary far in life not saying `is'. BEDEVERE: My liege, it's Sir Robin! MINSTREL (singing): Packing it in and packing it up And sneaking away and buggering up And chickening out and pissing about Yes, bravely he is throwing in the sponge ARTHUR: Oh, Robin! ROBIN: My liege! It's good to see you! KNIGHTS: Aaaaugh! HEAD KNIGHT: He said the word! ARTHUR: Surely you've not given up your quest for the Holy Grail? MINSTREL (singing): He is sneaking away and buggering up-- ROBIN: Shut up! No, no no-- far from it. HEAD KNIGHT: He said the word again! ROBIN: I was looking for it. KNIGHTS: Aaaaugh! ROBIN: Uh, here, here in this forest. ARTHUR: No, it is far from-- KNIGHTS: Aaaaugh! HEAD KNIGHT: Aaaaugh! Stop saying the word! ARTHUR: Oh, stop it! KNIGHTS: Aaaaugh! HEAD KNIGHT: Oh! He said it again! ARTHUR: Patsy! HEAD KNIGHT: Aaugh! I said it! I said it! Ooh! I said it again! KNIGHTS: Aaaaugh!
2021-03-23More sophisticated replacing for messagesFlorian Bruhin
Every message now takes a replace='...' ID, similar to what "dunstify --replace" does. This allows messages to be replaced even if another message was shown in the meantime (or with process live output, if another process was spawned).
2021-03-19Handle OSError in brave adblockFlorian Bruhin
2021-03-11Revert "Add deprecated aliases for renamed commands"Florian Bruhin
This reverts commit 8976e6850317881ed1aebed55a273e73c17a50bd.
2021-02-10Fix lint/testsFlorian Bruhin
2021-02-10Fix handling of :screenshot without --rectFlorian Bruhin
2021-02-10Handle errors while getting screenshotFlorian Bruhin
2021-02-10Add :screenshot commandFlorian Bruhin
See #1841 and #2146
2021-01-28Handle install of adblock library during runtimeFlorian Bruhin
The _possibly_show_missing_dependency_warning() is only shown if the "adblock" import is unavailable (i.e. None), thus we assumed that it must be either not installed or outdated. However, there's a third possible case: The library wasn't available at import time, but it *is* available when the setting changed at runtime. If that's the case, show a warning instead of an AssertionError.
2021-01-27Add deprecated aliases for renamed commandsFlorian Bruhin
See #6022, #6071
2021-01-26doc: Switch URLs to httpsFlorian Bruhin
2021-01-20Bump copyright yearsFlorian Bruhin
Closes #6015
2021-01-20Rename selection commandsFlorian Bruhin
See #6022
2021-01-16brave adblocker: Disable on file:/// URLsFlorian Bruhin
Fixes #6000
2021-01-15braveadblock: Make _resource_type_to_string privateFlorian Bruhin
2021-01-13dataclasses: Initial mypy fixFlorian Bruhin
See #6023
2021-01-11Add objects.qapp to avoid needing to None-checkFlorian Bruhin
We know that QApplication.instance() will always be non-None for practical purposes, but the stubs now (correctly) declare it as Optional. See https://github.com/stlehmann/PyQt5-stubs/pull/126
2021-01-08Trivial PyQt 6 changesFlorian Bruhin
See #5395
2020-12-22Rename adblock component to hostblockFlorian Bruhin
2020-12-22adblock: Show message when loading listsFlorian Bruhin
Same as with the hosts blocker
2020-12-22Add ModuleInfo.is_usable()Florian Bruhin
2020-12-22adblock: Minor changes to braveadblock.pyFlorian Bruhin
2020-12-22adblock: Use MODULE_INFO rather than _outdated_versionFlorian Bruhin
2020-12-22adblock: Fix brave adblock detection for host blockerFlorian Bruhin
The previous check: adblock_dependency_satisfied = braveadblock.ad_blocker is None checked the wrong thing - also, it relied on the `braveadblock` component being initialized before `adblock` is, which might not be the case. Instead, let's use the version.MODULE_INFO dictionary here.
2020-12-19Minor changes to braveadblock.pyFlorian Bruhin
2020-12-19Fix unraisable exception pytest failures in adblockÁrni Dagur
2020-12-19Fix flake8 complaintsÁrni Dagur
2020-12-19Merge branch 'master' into more-sophisticated-adblockÁrni Dagur
2020-12-19braveadblock.py: Get rid of adblock globalÁrni Dagur
2020-12-19Tackle code reviewÁrni Dagur
2020-12-19Fix lint complaintsÁrni Dagur
2020-12-19Check if adblock dependency is outdatedÁrni Dagur
2020-12-19Fix minor code review issuesÁrni Dagur
2020-12-19Make pylint and flake8 happierÁrni Dagur
2020-12-19Use PyQT slots instead of callbacksÁrni Dagur