Google Chrome does not render page after losing focus in AwesomeWM - nvidia

I have installed fresh Arch Linux with linux-ck and awesomewm. After that I have installed google-chrome and started it. Everything works well, but if I open other application (chrome lose focus) and then got back to the chrome, it freezes. Mouse cursor works as expected (cursor changes after hovering link, input field, etc) but view is not updated.
Everything works well again if I change desktop to the second and go back to the first again (mod+2, mod+1). Chrome works, responses etc well.
I bet this issue has something in common with hardware acceleration. If I run some game (steam), lose focus, get back to the game - it shows last rendered screen before focus has been lost (sound is ok, game is responsible but does not update screen).
I use nvidia. Do I need some extra configuration to handle it ?

You want to disable "Use hardware acceleration when available" in Chrome settings.

For me, disabling hardware acceleration as Alex pointed out solved the issue. This bug has been brought forward before in awesome's issues GitHub page.
Apparently, the problem is not awesome. Graphics drivers might be involved but the main suspect seems to be the compositing manager. Running awesome with the "--no-argb" flag and disabling the comp manager seems to solve the problem.

The problem was xcompmgr which caused "freezing" view. I switched it to unagi and all of the problems have gone.

Related

Vue Web App Blank on Some iPhones, but fine on all other devices

I created a webapp in Vue several months back and have been using it for some time. I've used it on Android, iPhone, Mac, Windows, and all was good in the beginning, however a couple of months back, I began noticing that the page would sometimes load on iPhone, and sometimes not. It worked perfectly fine on every Android I've tried without issue, works on Mac and on Windows, though iPhone seems to be hit or miss (haven't tried it on any other iOS/iPadOS devices), and I have no idea where to start. I know this doesn't give a lot of information to begin with, but I'm not sure how to even begin debugging this. What I have tried so far:
Resetting cache - did not fix
Using various browsers - blank page across Safari, Chrome, in private/incognito modes and normal modes
Tried different iPhones - would work without issue on some, but not on others
I have not touched the Vue config file, is there some support issue between specific iOS versions and Vue that I'm not aware of?
Again, I know there's not much detail provided other than "It doesn't work", but I honestly don't know what else to try or what information I might be able to use - if there is something additional I need to provide, let me know and I can update the post with the information.

Saw hundreds of warning on Latest Chrome F12 device mode when scrolling jtsage-TimeFlipBox?

The specific warning message is:
Unable to preventDefault inside passive event listener due to target being treated as passive.
This issue can also be reproduced easily in the demo site by JTSage if you use chrome F12 "Device" mode -- many warning in F12 console.
http://dev.jtsage.com/DateBox/jqm/timeflipbox/
http://dev.jtsage.com/DateBox/
Is it something to be concerned about? Occasionally my Chrome simulator would freeze. But I do not know for sure if this is related to those warnings.
I have also googled a bit to find below link, but I do not know enough on how to apply their suggestions on jtsage timeflipbox yet:
https://github.com/bevacqua/dragula/issues/468
Any suggestions?
Use this CSS:
.ui-datebox-container {
touch-action: none;
}
Reference: https://developer.mozilla.org/en-US/docs/Web/CSS/touch-action

React Native events do not work

I have a trivial react component that only shows a button:
<Button onPress={() => console.log("test")} title="Button"/>
When I put this button into a project I created with react-native init, it works as expected.
However, I have an existing project into which I integrated React Native (0.51.0) manually (because it doesn't use cocoa pods; I followed this guide: https://medium.com/#joshyhargreaves/adding-react-native-to-existing-ios-project-without-cocoapods-6f1ee9106009).
The project seems to work fine: the UI loads, the button gives visual feedback when I tap it. But the buttons onPress event is not fired, so it does not log anything.
There are no errors or warnings (except Class RCTCxxModule was not exported, but it seems to be safe to ignore this).
I'm now out of ideas of what I could try or how I could debug this issue short of diving into Reacts touch handling code. Here's what I tried:
Made sure to only have one RCTRootView, and that it is created in the main thread.
Checked for any suspicious things happening in the remote debugger; everything looks normal (no exceptions thrown or warnings logged).
Tested a few other components that should fire events; for example, TouchableOpacity does not work either.
Logging something after a timeout does work, so it doesn't seem like anything is deallocated prematurely
Checking for errors reported by the metro bundler: it doesn't print anything
Any ideas on what I need to do to get my button to print "test" when I tap it?
I think you have not Debug JS Remotely option enabled. If you don't you have to open React Native Debug Menu Pressing (command / control) + D or shake your device if you are debugging with real device. Then just press Debug JS Remotely and it should appear in the Google Chrome. Then inspect and open the console. There it is!
This mite caused by date diff between the host (your computer) and the client (the mobile device)
You can check this by running adb shell "date" && date
to see if there is a diff.
If there is one go to your mobile device and toggle automatic date & time off and back on.
Then test time diff again as mentioned, if there is no more diff, tap events should work in debug mode
More details in the original git issue answer by - Alex Ciarlillo

Selenium Web Driver Error

I'm getting a weird error while trying to click on a Capybara Element
I'm using find(:xpath,"//a[contains(text(),'Connect')]").click
(find(:xpath,"//a[contains(text(),'Connect')]").present? return true)
the error I get is:
Selenium::WebDriver::Error::MoveTargetOutOfBoundsError Exception: Element cannot be scrolled into view:javascript:void(0);
i did some research and the only solution i found is that setting the selenium version to 2.16 may fix this issue (i'm using 2.25).
anybody got an idea?
It may happen when the page being tested is not fit into the current window size. If you know such pages where usually these error happening, you may explicitly scroll down before doing the operation on such hidden elements(like click, clear etc). Here the code to explicitly scroll down the page.
In java,
JavascriptExecutor js = (JavascriptExecutor) driver;
js.executeScript("javascript:window.scrollBy(250,350)");
From the times I used selenium webdriver to test .NET apps, I would get that error when the issue was exactly what it sounds like: It's looking for an object on the page that it cant scroll to for some reason. In my case it was because some dialogue boxes would appear without scrollbars and the driver had no way to "scroll the object into view"
Can you watch the execution of your test and see if that's the case? I had some luck rolling back to a previous version of firefox because 15+ was (as of about 2 months ago when I had the issue) unsupported by web driver and had this problem periodically. Rolling back selenium versions may help too.
First step though is definitely to watch the execution of the test and see whats happening though. And a good debugging idea may be to try to work through your steps manually yourself to make sure the test works by hand.
Its also worth noting that for the webdriver to be able to execute click the object actually has to be visible. IsPresent doesnt require that, it just searches the page files. Also an issue I ran into. IsPresent will still return true for objects that are not and cannot be made visible on the page (i.e. something at the bottom of the page that you cant see at the time)
Couple of tips here:
Webdriver should ideally be on the most recent update, it's what most use (Unless you're doing Ruby Automation)
Use css selectors, xpath (Whilst rendered), is almost always heavier on both resources and code.
Try defensive coding, first of all ascertain it exists. There are many ways to do that dependent on what package you are using. In ruby you would do page.has_css?('css_string')

Pspad "File contents were changed. Reload?" dialog bug

I've been using PsPad for quite some time now, always on Windows XP never a problem. But since I've upgraded to Windows7, PsPad is throwing the confirmation dialog "File contents were changed. Reload?" when it doesn't have to. I can reproduce this annoying message by: editing a file, saving it (to the fileserver win3k over a network), viewing that file/page in the browser, going back to PsPad to work on the file. After that last point it throws the dialog, while obviously nothing has changed in the meantime.
Does anybody experience the same bug? Is there something to do about it? PsPad forum has a thread about this, but no solution is provided there.
You can switch it off in program settings / Direct edit button
CheckDocChanges=0
You can switch it off in program settings / Direct edit button CheckDocChanges=0
The DIRECT EDIT button it's a button to the left of the OK button on the program settings dialog box ( in version 4.5.4 ). It's not entirely intuitive but it's there alright if you look.
This occurs because the time on your server and your workstations are not in sync. You can set your workstation to synchronize with the same timeserver as your server, which you will have to find out yourself or from your admin.
To change the time server on your workstation do the following
Open date and time
Go to Internet Time
Change Settings
Put in the server
Click update now and OK

Resources