|
I thought we'd never speak of this again.
Cheers,
Vikram.
|
|
|
|
|
I forgot about the first rule.
|
|
|
|
|
Is this pool safe for diving? Well, it deep ends…
"I have no idea what I did, but I'm taking full credit for it." - ThisOldTony
"Common sense is so rare these days, it should be classified as a super power" - Random T-shirt
AntiTwitter: @DalekDave is now a follower!
|
|
|
|
|
Hope you won't be board by this but if swan wants to make a real splash.
Ravings en masse^ |
---|
"The difference between genius and stupidity is that genius has its limits." - Albert Einstein | "If you are searching for perfection in others, then you seek disappointment. If you seek perfection in yourself, then you will find failure." - Balboos HaGadol Mar 2010 |
|
|
|
|
|
I understand that was an attempt to make a splash. It flopped.
Freedom is the freedom to say that two plus two make four. If that is granted, all else follows.
-- 6079 Smith W.
|
|
|
|
|
He was just wading for nicer weather.
Ravings en masse^ |
---|
"The difference between genius and stupidity is that genius has its limits." - Albert Einstein | "If you are searching for perfection in others, then you seek disappointment. If you seek perfection in yourself, then you will find failure." - Balboos HaGadol Mar 2010 |
|
|
|
|
|
Isn't the Atlantic a little deep for wading?
OG would certainly be in hot water if he got to the Americas without a visa...
Freedom is the freedom to say that two plus two make four. If that is granted, all else follows.
-- 6079 Smith W.
|
|
|
|
|
Quote: the Americas without a visa... ...or MasterCard; you need money to survive in the US (land of the "free").
- I would love to change the world, but they won’t give me the source code.
|
|
|
|
|
I never thought of the Atlantic as having a 'deep end' - that's sort of a swimming pool thing.
Ravings en masse^ |
---|
"The difference between genius and stupidity is that genius has its limits." - Albert Einstein | "If you are searching for perfection in others, then you seek disappointment. If you seek perfection in yourself, then you will find failure." - Balboos HaGadol Mar 2010 |
|
|
|
|
|
You can wade in a river or on the beach as well as in a shallow pool.
Wading for better weather in the British Isles is an exercise in futility, so OG will necessarily have to wade elsewhere.
Freedom is the freedom to say that two plus two make four. If that is granted, all else follows.
-- 6079 Smith W.
|
|
|
|
|
You are always so poolitically correct
"If we don't change direction, we'll end up where we're going"
|
|
|
|
|
True, he doesn't like to make waves.
"the debugger doesn't tell me anything because this code compiles just fine" - random QA comment
"Facebook is where you tell lies to your friends. Twitter is where you tell the truth to strangers." - chriselst
"I don't drink any more... then again, I don't drink any less." - Mike Mullikins uncle
|
|
|
|
|
I navigated to (ZDNet article[^]) in my Brave browser and saw that it wanted to install software (Google Widevine DRM):
https://i.stack.imgur.com/gVN9k.png[^]
I navigated to that site in Chrome and I didn't see anything. Does that mean Chrome just automatically installed that thing? This seems odd to me. Maybe sites/browsers install extensions all the time and I don't know it??
From what I can tell, the answer is: Yes.
EDIT : Also, I should say, I've never ran a ad blocker before (which Brave does automatically) and I turn on ads for CP, because it makes sense. CP ads aren't bad and glad to help good sites with ads anyways.
|
|
|
|
|
Yep. CP is whitelisted for me as well.
I use uBlock, partly because it shows you how many ads it blocked on each page - and when the count gets into double figures, there is no way that site is every going to get on a whitelist!
"I have no idea what I did, but I'm taking full credit for it." - ThisOldTony
"Common sense is so rare these days, it should be classified as a super power" - Random T-shirt
AntiTwitter: @DalekDave is now a follower!
|
|
|
|
|
Chrome includes the Widevine module out of the box. You can verify it's installed by navigating to chrome://components .
Firefox includes it if you tick the "Play DRM-controlled content" option. It will be displayed in the add-ons manager under "plugins".
Brave doesn't include it by default, because they don't have access to the source code, and can't verify that it's not spying on you.
"These people looked deep within my soul and assigned me a number based on the order in which I joined."
- Homer
|
|
|
|
|
Good to know. Thanks for all the facts. I was very curious about that.
|
|
|
|
|
Google spying on you? What sort of paranoid weirdo are you?!?!?
If you can't laugh at yourself - ask me and I will do it for you.
|
|
|
|
|
Frustration.
I have an e-paper display that supports either monochrome mode with partial display updates (important for doing things like being able to show a clock on e-paper without atrocious refresh rates), or full screen only updates with 4 color grayscale.
So I need a way to switch screen modes. The problem is that different pixel types yield a different type of draw target, so my monochrome draw target must be an actual different class than my gray scale draw target.
That means:
I can't have one single function to switch screen modes, because each mode returns a different type. (not a show stopper though)
If I switch screen modes by returning a new drawing target what happens to the old one? What if you try to draw to it? I can make it error, but my concern is usability.
auto target1 = e_paper.mode<1>(); auto target2 = e_paper.mode<2>();
draw::filled_rectangle(target1,(srect16)target1.bounds(),color_max::black);
draw::filled_rectangle(target2,(srect16)target2.bounds(),color_max::gray);
I can't figure out if that's too confusing or not.
Such is the hazard of trying to user test one's own code.
*headdesk*
Real programmers use butterflies
|
|
|
|
|
honey the codewitch wrote: (srect16)target1.bounds()
I saw what you did there.
|
|
|
|
|
honey the codewitch wrote: Such is the hazard of trying to user test one's own code.
It's called dogfooding[^] and unfortunately is one of the best ways to get high quality code. It might not be appealing but it works
Mircea
|
|
|
|
|
Dogfooding is when you use something you've developed.
This is more about usability testing. It's a design phase thing. Dogfooding is well past that phase.
Real programmers use butterflies
|
|
|
|
|
Seems like a place where
delete this;
could come in handy in the changeMode function but you would have to refactor. Or else have 1 static/global object in memory for each mode and you switch between them.
// global
target = target->changeMode(newMode);
target->filled_rect(…)
changeMode could return this if newMode matches current setup or else do 1 of 2 things.
1.
delete this and return new replacement object
2.
Return pointer to correct static mode object.
I prefer 2 as it is less heap churn.
Good luck
|
|
|
|
|
I did a thing where the main driver class holds something like that instead of as a global.
Then, each mode holds a reference to the driver class that spawned it.
Whenever the driver class switches modes it deinitializes the old mode.
Whenever a mode goes out of scope or otherwise gets deinitialized it references the driver to kill the pointer to the last mode (setting it to null) while deinitalializing.
Real programmers use butterflies
|
|
|
|
|
Has both hands treated in vain with this product (4,7)
"I didn't mention the bats - he'd see them soon enough" - Hunter S Thompson - RIP
|
|
|
|
|
Has HAS
both hands LR
treated (anag)
in vain INVAIN
with this product
NAIL VARNISH
"I have no idea what I did, but I'm taking full credit for it." - ThisOldTony
"Common sense is so rare these days, it should be classified as a super power" - Random T-shirt
AntiTwitter: @DalekDave is now a follower!
|
|
|
|