Devtools açık/kapalı kontrolü

Merhaba arkadaşlar uzun zamandır tekrardan yazmaya başlamak istiyordum ve Tayfun’un short videosu karşıma geldi, bende bunu devtools ile bağlayıp bir konu yapayım dedim.

Devtools açık mı araştırırken Sindre Sorhus’un yazdığı bir kod parçasına denk geldim (devtools-detect). Not : Tüm tarayıcılarda çalışmıyor (explorer vs) ama güncel kullanılan tarayıcılarda çalışıyor.

const devtools = {
	isOpen: false,
	orientation: undefined,
};

const threshold = 170;

const emitEvent = (isOpen, orientation) => {
	globalThis.dispatchEvent(new globalThis.CustomEvent('devtoolschange', {
		detail: {
			isOpen,
			orientation,
		},
	}));
};

const main = function (emitEvents) {
	const widthThreshold = globalThis.outerWidth - globalThis.innerWidth > threshold;
	const heightThreshold = globalThis.outerHeight - globalThis.innerHeight > threshold;
	const orientation = widthThreshold ? 'vertical' : 'horizontal';

	if (
		!(heightThreshold && widthThreshold)
		&& ((globalThis.Firebug && globalThis.Firebug.chrome && globalThis.Firebug.chrome.isInitialized) || widthThreshold || heightThreshold)
	) {
		if ((!devtools.isOpen || devtools.orientation !== orientation) && emitEvents) {
			emitEvent(true, orientation);
		}

		devtools.isOpen = true;
		devtools.orientation = orientation;
	} else {
		if (devtools.isOpen && emitEvents) {
			emitEvent(false, undefined);
		}

		devtools.isOpen = false;
		devtools.orientation = undefined;
	}
};

main(false);
setInterval(main, 500);
console.log(
    '%caycan.net',
    'background:#cd1821; color:#fff; font-weight:bold; font-size:30px;text-shadow:0 0 5px #000;  padding:10px;'
);

console.log(
    '%cBu, geliştiriciler için tasarlanmış bir özelliktir.',
    'color:#333; font-weight:bold; font-size:20px;  padding:10px 0px;'
);

Kodun çıktısı aşağıdaki gibidir.

babam

Babamla alakalı bir çok şey yazmak istiyorum ama kimse üzülmesin diye yazmıyorum, bu seferde içimde patlıyor.

babam hep cevizlik ile uğraştığı için 1 saatte bir telefondan sıcaklık ve yağmur değerine bakardı: “aycan bak bugün %80 yağış var” yağış olacak, veya bugün %60 gösterdi ama yağmur yağmadı derdi.

Bugün öğrendim ki o yüzdeli değer o ilçenin %80’ine yağmur yağacak anlamındaymış. Bunu radyoda duyar duymaz birden babamı arayıp babama bunu anlatmak istedim ve kalbim göğüs kafesime sığmadı…

Hergün 40-45 dk konuştuğun en yakın arkadaşını kaybetmek çok zormuş..

Ve yetmez gibi aylardan kasım ve 20 kasım doğum günüm, 34 yaşıma gireceğim ve babam kutlayamayacak…

Canım babam elbet bir gün kavuşacağız elbet…

Youtube kanalı açmak (yutıbır aycan)

Uzun bir aradan sonra merhaba arkadaşlar,

Sektör çok hızlı geliştiği için sürekli kendimi blog/youtube ‘da buluyorum ve bu mükemmel bir şey yani aradığın bir kaynağı Türkçe bulmak.

Buraya kadar her şey çok güzel ama bazı blog veya videoları açtıktan 30 saniye sonra kapatıyorum, videolar veya yazı iyi olmadığı için değil, yanlış başlangıç yaptığı için anlatmak istediğini etkili ve verimli bir şekilde anlatamadığı için.

Öğretmenlik okuduğum için ;

1- Bir konu en iyi nasıl öğretebilirim bunu öğrendim,
2- “Eğitimde Materyal Tasarımı ” dersini aldığım için bu hazırlayacağım materyalde konumlandırma nasıl olur hedefler/kazançlar/özet bunları iyi kullanabilirim
3- Uzun içeriklerde kişilerin odağını belli bir noktadan sonra nasıl tekrar toplar ve heyecanlandırırım
4- Kişilerin seviyelerine göre içerik hazırlama (geçen bir videoda izlemiştim adam sıfırdan bir şey anlatıyor ama plaza dilini o kadar çok kullanıyor ve gereksiz noktalara o kadar değiniyor ki bildiğini de unutuyorsun.) konuyu gereksiz yere büyütmeden sadece öğretmek istediğimi öğretirim.

Bu maddeler böyle uzar gider o yüzden hiç yapmayacağım mesleğimi biraz olsun Türkiye deki yazılım sektörü ile birleştirerek güzel materyaller hazırlamak istiyorum.

Bir yandan da bu Youtube kanalını biraz da kişiselleştirmek kızımla oyunlarımızı yayınlamak ve Kızıma yani Doğa’ya hatıra kalmasını istiyorum.

Uzun zamandır düşünüyorum inşallah bu yazı bir şeylerin başlangıcı olur.

CSS ile İnternet siteleriniz için Filigran yapmak (pointer-events)

Merhaba arkadaşlar,

Özel ürettiğiniz yazılımlar/bilgi sistemleri için demo sürümlerinde projenin resminin dağıtılmaması veya kullanıcıya demo kullandığını hatırlatmak için filigran eklemek gerekebiliyor. Benden bu iş istenildiğinde ilk fikrim, css’de herşey katman katman’dır en üstte görünecekse tıklanma sorunu olur dedim ama sonra araştırdım ve pointer-events’i buldum. (Dinazor kafalı olmamakta fayda var.)

pointer-events: Bir element için fare’nin click/hover olayların da tepki verip/vermemesi ayarlamamızı sağlayan ve CSS3 ile gelen property.


See the Pen CSS ile İnternet siteleriniz için Filigran yapmak (pointer-events) by Aycan BÜLBÜL (@AycanB) on CodePen.

Tarayıcı uyumluluğu

Tarayıcı uyumluluğu da gayet güzel, özel yazılımlarda kullanıcılara demo sunarken tarayıcıya yönlendirebiliyoruz. o yüzden IE Edge haricini pek takmıyorum.

pointer-events Tarayıcı uyumluluğu

Kaynaklar

Arkadaşlar  pointer-events’in alabileceiği diğer değerleri(auto, none, visiblePainted, visibleFill, visibleStroke, visible, painted, fill, stroke, all) öğrenmek için sizi aşağıdaki kaynaklara yönlendiriyorum.