{"action":"created","issue":{"url":"https://api.github.com/repos/codykrieger/gfxCardStatus/issues/237","repository_url":"https://api.github.com/repos/codykrieger/gfxCardStatus","labels_url":"https://api.github.com/repos/codykrieger/gfxCardStatus/issues/237/labels{/name}","comments_url":"https://api.github.com/repos/codykrieger/gfxCardStatus/issues/237/comments","events_url":"https://api.github.com/repos/codykrieger/gfxCardStatus/issues/237/events","html_url":"https://github.com/codykrieger/gfxCardStatus/issues/237","id":150944472,"number":237,"title":"gfxCardStatus integrated-only logic error","user":{"login":"steveschow","id":9116800,"avatar_url":"https://avatars.githubusercontent.com/u/9116800?v=3","gravatar_id":"","url":"https://api.github.com/users/steveschow","html_url":"https://github.com/steveschow","followers_url":"https://api.github.com/users/steveschow/followers","following_url":"https://api.github.com/users/steveschow/following{/other_user}","gists_url":"https://api.github.com/users/steveschow/gists{/gist_id}","starred_url":"https://api.github.com/users/steveschow/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/steveschow/subscriptions","organizations_url":"https://api.github.com/users/steveschow/orgs","repos_url":"https://api.github.com/users/steveschow/repos","events_url":"https://api.github.com/users/steveschow/events{/privacy}","received_events_url":"https://api.github.com/users/steveschow/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"milestone":null,"comments":9,"created_at":"2016-04-25T18:25:04Z","updated_at":"2016-04-25T19:17:24Z","closed_at":"2016-04-25T18:30:46Z","body":"Some apps when they quit are switching to discrete graphics as they quit.\r\n\r\nIf gfxCardSatus is set to dynamic switching, this is no problem, it will subsequently switch back to integrated mode as soon as the app is completely exited. (assuming no other dependent apps)\r\n\r\nThe problem is that when the gfxCardStatus is trying to use “integrated-only” mode.  This mode is tracked internally by setting the Dynamic-switching flag to off.  Having that flag off applies to both integrated-only mode and discrete-only mode.  Therein lies the rub.\r\n\r\nWhen an app forces to discrete mode on exit, the dynamic switching flag is left unchanged (OFF) and the user returns to OSX permanently in discrete-only mode, rather then integrated-only mode.  This is very undesirable and makes integrated-only mode unusable.\r\n\r\nA proper fix for this logic error should be to detect that when an app forces to discrete mode on exit while in integrated-only mode, the dynamic switching flag should be temporarily turned on, so that dynamic switching can switch back to integrated mode as soon as possible.  Ideally, gfxCardStatus would also detect when it goes back to integrated, and then switch the dynamic-switching flag back off again when the user is hoping for integrated-only functionality.\r\n\r\nYes its true that this would not be true 100% integrated-only, as some apps would briefly switch to discrete mode on exit.  However what is happening now is really unusable as integrated-only mode often causes the entire machine to be switched to discrete-only mode permanently rather then just briefly on exit.\r\n\r\nI would fix this myself but I am unable to get the current release to build(see other ticket).\r\n"},"comment":{"url":"https://api.github.com/repos/codykrieger/gfxCardStatus/issues/comments/214487311","html_url":"https://github.com/codykrieger/gfxCardStatus/issues/237#issuecomment-214487311","issue_url":"https://api.github.com/repos/codykrieger/gfxCardStatus/issues/237","id":214487311,"user":{"login":"codykrieger","id":131179,"avatar_url":"https://avatars.githubusercontent.com/u/131179?v=3","gravatar_id":"","url":"https://api.github.com/users/codykrieger","html_url":"https://github.com/codykrieger","followers_url":"https://api.github.com/users/codykrieger/followers","following_url":"https://api.github.com/users/codykrieger/following{/other_user}","gists_url":"https://api.github.com/users/codykrieger/gists{/gist_id}","starred_url":"https://api.github.com/users/codykrieger/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/codykrieger/subscriptions","organizations_url":"https://api.github.com/users/codykrieger/orgs","repos_url":"https://api.github.com/users/codykrieger/repos","events_url":"https://api.github.com/users/codykrieger/events{/privacy}","received_events_url":"https://api.github.com/users/codykrieger/received_events","type":"User","site_admin":false},"created_at":"2016-04-25T19:17:24Z","updated_at":"2016-04-25T19:17:24Z","body":"You're wrong. OS X is responsible for 100% of that behavior, not gfxCardStatus. gfxCardStatus merely thinks it's in Discrete Only mode because the system is telling it:\r\n\r\n1. The discrete GPU is on; and\r\n2. Automatic graphics switching is turned off"}}