From 09d3b54d202d42e2e655ac5a1e63d7c8bfda315b Mon Sep 17 00:00:00 2001 From: Martin Rotter Date: Wed, 24 Sep 2014 18:40:27 +0200 Subject: [PATCH] No more focus rectangles for item views. Tweaked solarized skin. --- CMakeLists.txt | 1 + resources/skins/base/solarized.xml | 2 +- src/gui/feedsview.cpp | 4 ++- src/gui/messagesview.cpp | 4 ++- src/gui/styleditemdelegatewithoutfocus.cpp | 35 ++++++++++++++++++++++ src/gui/styleditemdelegatewithoutfocus.h | 35 ++++++++++++++++++++++ 6 files changed, 78 insertions(+), 3 deletions(-) create mode 100644 src/gui/styleditemdelegatewithoutfocus.cpp create mode 100644 src/gui/styleditemdelegatewithoutfocus.h diff --git a/CMakeLists.txt b/CMakeLists.txt index 1de3417e4..9ce25f018 100755 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -352,6 +352,7 @@ set(APP_SOURCES src/gui/toolbareditor.cpp src/gui/messagessearchlineedit.cpp src/gui/formimportexport.cpp + src/gui/styleditemdelegatewithoutfocus.cpp # DYNAMIC-SHORTCUTS sources. src/dynamic-shortcuts/shortcutcatcher.cpp diff --git a/resources/skins/base/solarized.xml b/resources/skins/base/solarized.xml index 90be8ab53..b72041893 100644 --- a/resources/skins/base/solarized.xml +++ b/resources/skins/base/solarized.xml @@ -8,5 +8,5 @@ PGh0bWw+DQogIDxoZWFkPg0KICAgIDxzdHlsZT4gICANCiAgICAgIGJvZHkgeyAgDQogICAgICAgIG1hcmdpbjogMHB4Ow0KICAgICAgICBwYWRkaW5nOiAwcHg7DQogICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZGY2ZTM7DQogICAgICB9DQogICAgDQogICAgICBwcmUgew0KICAgICAgICB3aGl0ZS1zcGFjZTogcHJlLXdyYXA7DQogICAgICB9DQogICAgICANCiAgICAgIC5jb250YWluZXIgew0KICAgICAgICBmb250LWZhbWlseTogIlRyZWJ1Y2hldCBNUyIsIEhlbHZldGljYSwgc2Fucy1zZXJpZjsNCiAgICAgICAgY29sb3I6ICM2NTdiODM7DQogICAgICB9DQoNCiAgICAgIC5oZWFkZXJ0ZXh0IHsNCiAgICAgICAgZm9udC1zaXplOiAyMHB4Ow0KICAgICAgfQ0KDQogICAgICAuaGVhZGVyIHsNCiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMmIzNjsgLyogUmVtb3ZlIHRvIGdldCByaWQgb2Ygc3BlY2lhbCBjb2xvciBmb3IgaGVhZGVyLiAqLw0KICAgICAgICBjb2xvcjogIzgzOTQ5NjsgLyogUmVtb3ZlIHRvIGdldCByaWQgb2Ygc3BlY2lhbCBjb2xvciBmb3IgaGVhZGVyLiAqLw0KICAgICAgICBib3JkZXI6IDAuNXB4IHNvbGlkIGJsYWNrOw0KICAgICAgICBmb250LXNpemU6IDE2cHg7DQogICAgICAgIHBhZGRpbmc6IDZweDsNCiAgICAgIH0NCg0KICAgICAgYSwgYTphY3RpdmUsIGE6dmlzaXRlZCB7DQogICAgICAgIGNvbG9yOiAjMjY4YmQyOw0KICAgICAgICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7DQogICAgICB9DQogICAgICANCiAgICAgIGE6aG92ZXIgew0KICAgICAgICBjb2xvcjogIzgzOTQ5NjsNCiAgICAgIH0NCiAgICAgIA0KICAgICAgOjpzZWxlY3Rpb24gew0KICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDczNjQyOw0KICAgICAgfQ0KDQogICAgICAuY29udGVudCB7DQogICAgICAgIGJvcmRlcjogMC41cHggc29saWQgYmxhY2s7DQogICAgICAgIHBhZGRpbmc6IDEycHg7DQogICAgICAgIGZvbnQtc2l6ZTogMTJweDsNCiAgICAgIH0NCiAgICA8L3N0eWxlPg0KICAgIDx0aXRsZT4NCiAgICAgICUxDQogICAgPC90aXRsZT4NCiAgPC9oZWFkPg0KICA8Ym9keT4NCiAgICAlMg0KICA8L2JvZHk+DQo8L2h0bWw+ PGRpdiBjbGFzcz0iY29udGFpbmVyIj4NCiAgICAgIDxkaXYgY2xhc3M9ImhlYWRlciI+DQogICAgICAgIDxkaXYgY2xhc3M9ImhlYWRlcnRleHQiPiUxPC9kaXY+DQogICAgICAgICUyLCAlNQ0KICAgICAgICA8YnIvPg0KICAgICAgICA8YSBocmVmPSIlMyI+JTM8L2E+DQogICAgICA8L2Rpdj4NCiAgICAgIDxkaXYgY2xhc3M9ImNvbnRlbnQiPiU0PC9kaXY+DQogICAgPC9kaXY+ - UVdpZGdldCB7DQogIGNvbG9yOiAjNjU3YjgzOw0KICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmRmNmUzOw0KfQ0KDQpRV2lkZ2V0OjppdGVtOmhvdmVyIHsNCiAgYmFja2dyb3VuZC1jb2xvcjogI2VlZThkNTsNCiAgY29sb3I6ICM2NTdiODM7DQp9DQoNClFXaWRnZXQ6ZGlzYWJsZWQgew0KICBjb2xvcjogZ3JheTsNCiAgYmFja2dyb3VuZC1jb2xvcjogI2ZkZjZlMzsNCn0NCg0KUVRyZWVWaWV3OjpicmFuY2g6aGFzLXNpYmxpbmdzOiFhZGpvaW5zLWl0ZW0gIHsNCiAgYm9yZGVyLWltYWdlOiB1cmwocXNzL2R1bW15LnBuZykgMDsNCn0NCg0KUVRyZWVWaWV3OjpicmFuY2g6aGFzLXNpYmxpbmdzOmFkam9pbnMtaXRlbSB7DQogIGJvcmRlci1pbWFnZTogdXJsKHFzcy9kdW1teS5wbmcpIDA7DQp9DQoNClFUcmVlVmlldzo6YnJhbmNoOiFoYXMtY2hpbGRyZW46IWhhcy1zaWJsaW5nczphZGpvaW5zLWl0ZW0gIHsNCiAgYm9yZGVyLWltYWdlOiB1cmwocXNzL2R1bW15LnBuZykgMDsNCn0NCg0KUVRyZWVWaWV3OjpicmFuY2g6aGFzLWNoaWxkcmVuOiFoYXMtc2libGluZ3M6Y2xvc2VkLA0KUVRyZWVWaWV3OjpicmFuY2g6Y2xvc2VkOmhhcy1jaGlsZHJlbjpoYXMtc2libGluZ3MgIHsNCiAgYm9yZGVyLWltYWdlOiBub25lOw0KICBpbWFnZTogdXJsKHFzcy9icmFuY2gtY2xvc2VkLnBuZyk7DQp9DQoNClFUcmVlVmlldzo6YnJhbmNoOm9wZW46aGFzLWNoaWxkcmVuOiFoYXMtc2libGluZ3MsDQpRVHJlZVZpZXc6OmJyYW5jaDpvcGVuOmhhcy1jaGlsZHJlbjpoYXMtc2libGluZ3MgIHsNCiAgYm9yZGVyLWltYWdlOiBub25lOw0KICBpbWFnZTogdXJsKHFzcy9icmFuY2gtb3Blbi5wbmcpOw0KfQ0KDQpRVHJlZVZpZXc6Oml0ZW0gew0KICBwYWRkaW5nOiAxcHg7DQp9IA0KDQpRVHJlZVZpZXdbaGlkZVRyZWU9InRydWUiXTo6YnJhbmNoOiFoYXMtY2hsaWRyZW46aGFzU2libGluZ3Mgew0KICBib3JkZXItaW1hZ2U6IG5vbmU7DQogIGltYWdlOiBub25lOw0KfQ0KDQpRVHJlZVZpZXc6Oml0ZW06c2VsZWN0ZWQsIFFUcmVlVmlldzo6YnJhbmNoOnNlbGVjdGVkLCBRVHJlZVZpZXc6Oml0ZW06c2VsZWN0ZWQ6YWN0aXZlLCBRVHJlZVZpZXc6Oml0ZW06c2VsZWN0ZWQ6IWFjdGl2ZSwgUVRyZWVWaWV3OjppdGVtOmhvdmVyIHsNCiAgYmFja2dyb3VuZC1jb2xvcjogI2VlZThkNTsNCiAgY29sb3I6ICM2NTdiODM7DQp9DQoNClFUb29sVGlwIHsNCiAgYm9yZGVyOiAxcHggc29saWQgIzg4YTZiMTsNCiAgYmFja2dyb3VuZC1jb2xvcjogI2ZkZjZlMzsNCiAgY29sb3I6ICM2NTdiODM7DQogIGJvcmRlci1yYWRpdXM6IDFweDsNCiAgb3BhY2l0eTogMjIwOw0KfQ0KIA0KUVN0YXR1c0Jhcjo6aXRlbSB7DQogIGJvcmRlcjogbm9uZTsNCn0NCg0KUVNwbGl0dGVyOjpoYW5kbGUgew0KICB3aWR0aDogMXB4Ow0KICBiYWNrZ3JvdW5kLWNvbG9yOiAjODhhNmIxOw0KfQ0KDQpRU3BsaXR0ZXI6OmhhbmRsZTp2ZXJ0aWNhbCB7DQogIG1hcmdpbjogMXB4IDBweCAwcHggMHB4Ow0KfQ0KDQpRU3BsaXR0ZXI6OmhhbmRsZTpob3Jpem9udGFsIHsNCiAgbWFyZ2luOiAwcHggMXB4IDBweCAxcHg7DQp9DQoNClFTdGF0dXNCYXIgUVRvb2xCdXR0b24gew0KICBtYXJnaW4tbGVmdDogNXB4Ow0KICBtYXJnaW4tcmlnaHQ6IDVweDsNCn0NCg0KUVN0YXR1c0Jhcjo6aXRlbSB7DQogIGJvcmRlcjogdHJhbnNwYXJlbnQ7DQp9DQoNClFQcm9ncmVzc0JhciB7DQogIGJvcmRlcjogdHJhbnNwYXJlbnQ7DQogIHRleHQtYWxpZ246IGNlbnRlcjsNCn0NCg0KUVByb2dyZXNzQmFyOjpjaHVuayB7DQogIGJhY2tncm91bmQtY29sb3I6ICM4Mzk0OTY7DQogIHdpZHRoOiAxcHg7DQogIG1hcmdpbjogMHB4Ow0KfQ0KDQpRUHJvZ3Jlc3NCYXIgUUxhYmVsIHsNCiAgY29sb3I6ICMwMDJiMzY7DQogIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50Ow0KfQ0KDQpRVG9vbEJ1dHRvbiwgUVRvb2xCdXR0b246ZGlzYWJsZWQgew0KICBib3JkZXI6IG5vbmU7DQogIHBhZGRpbmc6IDBweDsNCiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7DQp9DQoNClFUb29sQnV0dG9uOmhvdmVyLCBRVG9vbEJ1dHRvbjpwcmVzc2VkIHsNCiAgYm9yZGVyOiAxcHggc29saWQgI2VlZThkNTsNCn0NCg0KUVRvb2xCdXR0b25bcG9wdXBNb2RlPSIxIl0gew0KICBwYWRkaW5nLXJpZ2h0OiAxMXB4Ow0KfQ0KDQpRVG9vbEJ1dHRvbjo6bWVudS1idXR0b24gew0KICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMHB4Ow0KICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMHB4Ow0KICB3aWR0aDogMTFweDsNCn0NCg0KUVRvb2xCdXR0b246Om1lbnUtYnV0dG9uOmhvdmVyLCBRVG9vbEJ1dHRvbjo6bWVudS1idXR0b246cHJlc3NlZCB7DQogIGJhY2tncm91bmQtY29sb3I6ICNkMzM2ODI7DQp9DQoNClFUb29sQnV0dG9uOjptZW51LWFycm93IHsNCiAgaW1hZ2U6IHVybCgjIy9pbWFnZXMvZG93bl9hcnJvdy5wbmcpOw0KfQ0KDQpRVG9vbEJhcjo6c2VwYXJhdG9yIHsNCiAgd2lkdGg6IDFweDsNCiAgYmFja2dyb3VuZC1jb2xvcjogIzg4YTZiMTsNCiAgbWFyZ2luLWxlZnQ6IDVweDsNCiAgbWFyZ2luLXJpZ2h0OiA1cHg7DQp9DQoNClFUb29sQmFyIHsNCiAgcGFkZGluZy1sZWZ0OiA1cHg7DQogIHBhZGRpbmctcmlnaHQ6IDVweDsNCn0NCg0KUU1lbnVCYXIgew0KICBiYWNrZ3JvdW5kOiBRTGluZWFyR3JhZGllbnQoeDE6MCwgeTE6MCwgeDI6MCwgeTI6MSwgc3RvcDowICNlMGVlZTAsIHN0b3A6MC40ICNkOGVlZDgsIHN0b3A6MC41ICNjY2VlY2MsIHN0b3A6MSAjZTBlZWUwKTsNCiAgY29sb3I6ICMwMDAwMDA7DQogIHBhZGRpbmc6IDFweDsNCn0NCg0KUU1lbnVCYXI6Oml0ZW0gew0KICBwYWRkaW5nOiAzcHggNnB4Ow0KICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsNCn0NCg0KUU1lbnVCYXI6Oml0ZW06c2VsZWN0ZWQgew0KICBib3JkZXI6IDFweCBzb2xpZCAjODRjYzg0Ow0KICBiYWNrZ3JvdW5kOiBRTGluZWFyR3JhZGllbnQoeDE6MCwgeTE6MCwgeDI6MCwgeTI6MSwgc3RvcDowICNlOWZmZTksIHN0b3A6MC40ICNlMWVlZTEsIHN0b3A6MC41ICNkOWVlZDksIHN0b3A6MSAjZTlmZmU5KTsNCn0NCg0KUU1lbnVCYXI6Oml0ZW06cHJlc3NlZCB7DQogIGJvcmRlcjogMXB4IHNvbGlkICMzNGFhMzQ7DQogIGJvcmRlci1ib3R0b206IG5vbmU7DQogIGJhY2tncm91bmQ6IFFMaW5lYXJHcmFkaWVudCh4MTowLCB5MTowLCB4MjowLCB5MjoxLCBzdG9wOjAgIzdhY2M3YSwgc3RvcDowLjQgIzcwYzg3MCwgc3RvcDowLjUgIzYwYzQ2MCwgc3RvcDoxICM3YWNjN2EpOw0KICBjb2xvcjogd2hpdGU7DQp9 + UVdpZGdldCB7DQogIGNvbG9yOiAjNjU3YjgzOw0KICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmRmNmUzOw0KfQ0KDQpRV2lkZ2V0OjppdGVtOmhvdmVyIHsNCiAgYmFja2dyb3VuZC1jb2xvcjogI2VlZThkNTsNCiAgY29sb3I6ICM2NTdiODM7DQp9DQoNClFXaWRnZXQ6ZGlzYWJsZWQgew0KICBjb2xvcjogZ3JheTsNCiAgYmFja2dyb3VuZC1jb2xvcjogI2ZkZjZlMzsNCn0NCg0KUVRyZWVWaWV3OjpicmFuY2g6aGFzLXNpYmxpbmdzOiFhZGpvaW5zLWl0ZW0gIHsNCiAgYm9yZGVyLWltYWdlOiB1cmwocXNzL2R1bW15LnBuZykgMDsNCn0NCg0KUVRyZWVWaWV3OjpicmFuY2g6aGFzLXNpYmxpbmdzOmFkam9pbnMtaXRlbSB7DQogIGJvcmRlci1pbWFnZTogdXJsKHFzcy9kdW1teS5wbmcpIDA7DQp9DQoNClFUcmVlVmlldzo6YnJhbmNoOiFoYXMtY2hpbGRyZW46IWhhcy1zaWJsaW5nczphZGpvaW5zLWl0ZW0gIHsNCiAgYm9yZGVyLWltYWdlOiB1cmwocXNzL2R1bW15LnBuZykgMDsNCn0NCg0KUVRyZWVWaWV3OjpicmFuY2g6aGFzLWNoaWxkcmVuOiFoYXMtc2libGluZ3M6Y2xvc2VkLA0KUVRyZWVWaWV3OjpicmFuY2g6Y2xvc2VkOmhhcy1jaGlsZHJlbjpoYXMtc2libGluZ3MgIHsNCiAgYm9yZGVyLWltYWdlOiBub25lOw0KICBpbWFnZTogdXJsKHFzcy9icmFuY2gtY2xvc2VkLnBuZyk7DQp9DQoNClFUcmVlVmlldzo6YnJhbmNoOm9wZW46aGFzLWNoaWxkcmVuOiFoYXMtc2libGluZ3MsDQpRVHJlZVZpZXc6OmJyYW5jaDpvcGVuOmhhcy1jaGlsZHJlbjpoYXMtc2libGluZ3MgIHsNCiAgYm9yZGVyLWltYWdlOiBub25lOw0KICBpbWFnZTogdXJsKHFzcy9icmFuY2gtb3Blbi5wbmcpOw0KfQ0KDQpRVHJlZVZpZXc6Oml0ZW0gew0KICBwYWRkaW5nOiAxcHg7DQp9IA0KDQpRVHJlZVZpZXdbaGlkZVRyZWU9InRydWUiXTo6YnJhbmNoOiFoYXMtY2hsaWRyZW46aGFzU2libGluZ3Mgew0KICBib3JkZXItaW1hZ2U6IG5vbmU7DQogIGltYWdlOiBub25lOw0KfQ0KDQpRVHJlZVZpZXc6Oml0ZW06c2VsZWN0ZWQsIFFUcmVlVmlldzo6YnJhbmNoOnNlbGVjdGVkLCBRVHJlZVZpZXc6Oml0ZW06c2VsZWN0ZWQ6YWN0aXZlLCBRVHJlZVZpZXc6Oml0ZW06c2VsZWN0ZWQ6IWFjdGl2ZSwgUVRyZWVWaWV3OjppdGVtOmhvdmVyIHsNCiAgYmFja2dyb3VuZC1jb2xvcjogIzA3MzY0MjsNCiAgY29sb3I6ICM4Mzk0OTY7DQp9DQoNClFUb29sVGlwIHsNCiAgYm9yZGVyOiAxcHggc29saWQgIzg4YTZiMTsNCiAgYmFja2dyb3VuZC1jb2xvcjogI2ZkZjZlMzsNCiAgY29sb3I6ICM2NTdiODM7DQogIGJvcmRlci1yYWRpdXM6IDFweDsNCiAgb3BhY2l0eTogMjIwOw0KfQ0KIA0KUVN0YXR1c0Jhcjo6aXRlbSB7DQogIGJvcmRlcjogbm9uZTsNCn0NCg0KUVNwbGl0dGVyOjpoYW5kbGUgew0KICB3aWR0aDogMXB4Ow0KICBiYWNrZ3JvdW5kLWNvbG9yOiAjODhhNmIxOw0KfQ0KDQpRU3BsaXR0ZXI6OmhhbmRsZTp2ZXJ0aWNhbCB7DQogIG1hcmdpbjogMXB4IDBweCAwcHggMHB4Ow0KfQ0KDQpRU3BsaXR0ZXI6OmhhbmRsZTpob3Jpem9udGFsIHsNCiAgbWFyZ2luOiAwcHggMXB4IDBweCAxcHg7DQp9DQoNClFTdGF0dXNCYXIgUVRvb2xCdXR0b24gew0KICBtYXJnaW4tbGVmdDogNXB4Ow0KICBtYXJnaW4tcmlnaHQ6IDVweDsNCn0NCg0KUVN0YXR1c0Jhcjo6aXRlbSB7DQogIGJvcmRlcjogdHJhbnNwYXJlbnQ7DQp9DQoNClFQcm9ncmVzc0JhciB7DQogIGJvcmRlcjogdHJhbnNwYXJlbnQ7DQogIHRleHQtYWxpZ246IGNlbnRlcjsNCn0NCg0KUVByb2dyZXNzQmFyOjpjaHVuayB7DQogIGJhY2tncm91bmQtY29sb3I6ICM4Mzk0OTY7DQogIHdpZHRoOiAxcHg7DQogIG1hcmdpbjogMHB4Ow0KfQ0KDQpRUHJvZ3Jlc3NCYXIgUUxhYmVsIHsNCiAgY29sb3I6ICMwMDJiMzY7DQogIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50Ow0KfQ0KDQpRVG9vbEJ1dHRvbiwgUVRvb2xCdXR0b246ZGlzYWJsZWQgew0KICBib3JkZXI6IG5vbmU7DQogIHBhZGRpbmc6IDBweDsNCiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7DQp9DQoNClFUb29sQnV0dG9uOmhvdmVyLCBRVG9vbEJ1dHRvbjpwcmVzc2VkIHsNCiAgYm9yZGVyOiAxcHggc29saWQgI2VlZThkNTsNCn0NCg0KUVRvb2xCdXR0b25bcG9wdXBNb2RlPSIxIl0gew0KICBwYWRkaW5nLXJpZ2h0OiAxMXB4Ow0KfQ0KDQpRVG9vbEJ1dHRvbjo6bWVudS1idXR0b24gew0KICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMHB4Ow0KICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMHB4Ow0KICB3aWR0aDogMTFweDsNCn0NCg0KUVRvb2xCdXR0b246Om1lbnUtYnV0dG9uOmhvdmVyLCBRVG9vbEJ1dHRvbjo6bWVudS1idXR0b246cHJlc3NlZCB7DQogIGJhY2tncm91bmQtY29sb3I6ICNkMzM2ODI7DQp9DQoNClFUb29sQnV0dG9uOjptZW51LWFycm93IHsNCiAgaW1hZ2U6IHVybCgjIy9pbWFnZXMvZG93bl9hcnJvdy5wbmcpOw0KfQ0KDQpRVG9vbEJhcjo6c2VwYXJhdG9yIHsNCiAgd2lkdGg6IDFweDsNCiAgYmFja2dyb3VuZC1jb2xvcjogIzg4YTZiMTsNCiAgbWFyZ2luLWxlZnQ6IDVweDsNCiAgbWFyZ2luLXJpZ2h0OiA1cHg7DQp9DQoNClFUb29sQmFyIHsNCiAgcGFkZGluZy1sZWZ0OiA1cHg7DQogIHBhZGRpbmctcmlnaHQ6IDVweDsNCn0NCg0KUU1lbnVCYXIgew0KICBiYWNrZ3JvdW5kOiBRTGluZWFyR3JhZGllbnQoeDE6MCwgeTE6MCwgeDI6MCwgeTI6MSwgc3RvcDowICNlMGVlZTAsIHN0b3A6MC40ICNkOGVlZDgsIHN0b3A6MC41ICNjY2VlY2MsIHN0b3A6MSAjZTBlZWUwKTsNCiAgY29sb3I6ICMwMDAwMDA7DQogIHBhZGRpbmc6IDFweDsNCn0NCg0KUU1lbnVCYXI6Oml0ZW0gew0KICBwYWRkaW5nOiAzcHggNnB4Ow0KICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsNCn0NCg0KUU1lbnVCYXI6Oml0ZW06c2VsZWN0ZWQgew0KICBib3JkZXI6IDFweCBzb2xpZCAjODRjYzg0Ow0KICBiYWNrZ3JvdW5kOiBRTGluZWFyR3JhZGllbnQoeDE6MCwgeTE6MCwgeDI6MCwgeTI6MSwgc3RvcDowICNlOWZmZTksIHN0b3A6MC40ICNlMWVlZTEsIHN0b3A6MC41ICNkOWVlZDksIHN0b3A6MSAjZTlmZmU5KTsNCn0NCg0KUU1lbnVCYXI6Oml0ZW06cHJlc3NlZCB7DQogIGJvcmRlcjogMXB4IHNvbGlkICMzNGFhMzQ7DQogIGJvcmRlci1ib3R0b206IG5vbmU7DQogIGJhY2tncm91bmQ6IFFMaW5lYXJHcmFkaWVudCh4MTowLCB5MTowLCB4MjowLCB5MjoxLCBzdG9wOjAgIzdhY2M3YSwgc3RvcDowLjQgIzcwYzg3MCwgc3RvcDowLjUgIzYwYzQ2MCwgc3RvcDoxICM3YWNjN2EpOw0KICBjb2xvcjogd2hpdGU7DQp9 \ No newline at end of file diff --git a/src/gui/feedsview.cpp b/src/gui/feedsview.cpp index 33b864803..bff300526 100755 --- a/src/gui/feedsview.cpp +++ b/src/gui/feedsview.cpp @@ -31,6 +31,7 @@ #include "gui/formfeeddetails.h" #include "gui/systemtrayicon.h" #include "gui/messagebox.h" +#include "gui/styleditemdelegatewithoutfocus.h" #include #include @@ -548,9 +549,10 @@ void FeedsView::setupAppearance() { setDragEnabled(false); setDropIndicatorShown(false); setDragDropMode(QAbstractItemView::NoDragDrop); - setAllColumnsShowFocus(true); + setAllColumnsShowFocus(false); setRootIsDecorated(false); setSelectionMode(QAbstractItemView::SingleSelection); + setItemDelegate(new StyledItemDelegateWithoutFocus(this)); // Sort in ascending order, that is categories are // "bigger" than feeds. diff --git a/src/gui/messagesview.cpp b/src/gui/messagesview.cpp index 68d3453e3..a84badb7d 100755 --- a/src/gui/messagesview.cpp +++ b/src/gui/messagesview.cpp @@ -24,6 +24,7 @@ #include "network-web/webfactory.h" #include "gui/formmain.h" #include "gui/messagebox.h" +#include "gui/styleditemdelegatewithoutfocus.h" #include #include @@ -42,6 +43,7 @@ MessagesView::MessagesView(QWidget *parent) createConnections(); setModel(m_proxyModel); setupAppearance(); + setItemDelegate(new StyledItemDelegateWithoutFocus(this)); } MessagesView::~MessagesView() { @@ -118,7 +120,7 @@ void MessagesView::setupAppearance() { setEditTriggers(QAbstractItemView::NoEditTriggers); setItemsExpandable(false); setSortingEnabled(true); - setAllColumnsShowFocus(true); + setAllColumnsShowFocus(false); setSelectionMode(QAbstractItemView::ExtendedSelection); } diff --git a/src/gui/styleditemdelegatewithoutfocus.cpp b/src/gui/styleditemdelegatewithoutfocus.cpp new file mode 100644 index 000000000..603e47af5 --- /dev/null +++ b/src/gui/styleditemdelegatewithoutfocus.cpp @@ -0,0 +1,35 @@ +// This file is part of RSS Guard. +// +// Copyright (C) 2011-2014 by Martin Rotter +// +// RSS Guard is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. +// +// RSS Guard is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with RSS Guard. If not, see . + +#include "gui/styleditemdelegatewithoutfocus.h" + + +StyledItemDelegateWithoutFocus::StyledItemDelegateWithoutFocus(QObject *parent) : QStyledItemDelegate(parent) { +} + +StyledItemDelegateWithoutFocus::~StyledItemDelegateWithoutFocus() { +} + +void StyledItemDelegateWithoutFocus::paint(QPainter *painter, const QStyleOptionViewItem &option, const QModelIndex &index) const { + QStyleOptionViewItemV4 itemOption(option); + + if (itemOption.state & QStyle::State_HasFocus) { + itemOption.state = itemOption.state ^ QStyle::State_HasFocus; + } + + QStyledItemDelegate::paint(painter, itemOption, index); +} diff --git a/src/gui/styleditemdelegatewithoutfocus.h b/src/gui/styleditemdelegatewithoutfocus.h new file mode 100644 index 000000000..e4f448eb6 --- /dev/null +++ b/src/gui/styleditemdelegatewithoutfocus.h @@ -0,0 +1,35 @@ +// This file is part of RSS Guard. +// +// Copyright (C) 2011-2014 by Martin Rotter +// +// RSS Guard is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. +// +// RSS Guard is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with RSS Guard. If not, see . + +#ifndef STYLEDITEMDELEGATEWITHOUTFOCUS_H +#define STYLEDITEMDELEGATEWITHOUTFOCUS_H + +#include +#include + + +class StyledItemDelegateWithoutFocus : public QStyledItemDelegate { + public: + // Constructors. + explicit StyledItemDelegateWithoutFocus(QObject *parent = 0); + virtual ~StyledItemDelegateWithoutFocus(); + + void paint(QPainter* painter, const QStyleOptionViewItem & option, const QModelIndex &index) const; + +}; + +#endif // STYLEDITEMDELEGATEWITHOUTFOCUS_H