| Summary: | KBackgroundInterface.currentWallpaper doesn't return wallpapers past desktop 4 | ||
|---|---|---|---|
| Product: | [Unmaintained] kdesktop | Reporter: | sblinux |
| Component: | wallpaper | Assignee: | David Faure <faure> |
| Status: | CLOSED FIXED | ||
| Severity: | normal | CC: | finex, khindenburg |
| Priority: | NOR | ||
| Version First Reported In: | unspecified | ||
| Target Milestone: | --- | ||
| Platform: | Compiled Sources | ||
| OS: | Linux | ||
| Latest Commit: | Version Fixed/Implemented In: | ||
| Sentry Crash Report: | |||
| Attachments: | Patch to allocate all desktops upon startup. | ||
|
Description
sblinux
2005-02-07 00:00:23 UTC
Created attachment 13965 [details]
Patch to allocate all desktops upon startup.
Any issues with allocating all the desktops at startup? On Sunday 18 December 2005 04:36, Kurt V.Hindenburg wrote:
> Any issues with allocating all the desktops at startup?
Slower KDE startup?
validateDesk is only called for only DCOP calls: currentWallpaper, wallPaperFiles, wallPaperList and setWallpaper so it should not effect performance. I assume .size() is cheaper than numberOfDesktops().
Index: bgmanager.cc
===================================================================
--- bgmanager.cc (revision 488733)
+++ bgmanager.cc (working copy)
@@ -577,6 +577,9 @@
// Return a valid desk number.
int KBackgroundManager::validateDesk(int desk)
{
+ if (desk > (int)m_Renderer.size())
+ slotChangeNumberOfDesktops( m_pKwinmodule->numberOfDesktops() );
+
if ( (desk <= 0) || (desk > (int)m_Renderer.size()) )
return realDesktop();
SVN commit 498031 by hindenburg:
Fix initializations for desktops>4 when using DCOP calls.
BUG: 98734
M +3 -0 bgmanager.cc
--- branches/KDE/3.5/kdebase/kdesktop/bgmanager.cc #498030:498031
@@ -577,6 +577,9 @@
// Return a valid desk number.
int KBackgroundManager::validateDesk(int desk)
{
+ if (desk > (int)m_Renderer.size())
+ slotChangeNumberOfDesktops( m_pKwinmodule->numberOfDesktops() );
+
if ( (desk <= 0) || (desk > (int)m_Renderer.size()) )
return realDesktop();
SVN commit 498067 by beaulen: Forward port fix for bug 98734 CCBUG: 98734 M +3 -0 bgmanager.cc --- trunk/KDE/kdebase/workspace/kdesktop/bgmanager.cc #498066:498067 @@ -585,6 +585,9 @@ // Return a valid desk number. int KBackgroundManager::validateDesk(int desk) { + if (desk > (int)m_Renderer.size()) + slotChangeNumberOfDesktops( m_pKwinmodule->numberOfDesktops() ); + if ( (desk <= 0) || (desk > (int)m_Renderer.size()) ) return realDesktop(); Bug closed. Kdesktop is no more mantained. |