[prev in list] [next in list] [prev in thread] [next in thread]
List: kfm-devel
Subject: Re: hidden directory crash - analysis..
From: Waldo Bastian <bastian () kde ! org>
Date: 2003-02-21 22:52:27
[Download RAW message or body]
On Friday 21 February 2003 20:25, Maksim Orlovich wrote:
> Since I don't think it'd be backwards compatible to make
> KDirLister::setShowDotFiles context dependent,
KDirLister is not really designed to have different settings for different
directories. It will be very hairy to add it.
> the setting in the sidebar
> treeview should probably be fixed to the one of the view's root directory.
The attached patch does this. However, it now becomes very obvious that the
"show hidden files" menu-option has no effect on the dirtree. I'm not sure if
there is a simple way to make it follow the other view in this regard, but
otherwise I would like to suggest to simply disable showing dotfiles in the
directory tree and be done with it. (also attached)
Cheers,
Waldo
--
bastian@kde.org -=|[ SuSE, The Linux Desktop Experts ]|=- bastian@suse.com
["dirtree.diff" (text/x-diff)]
Index: dirtree_module.cpp
===================================================================
RCS file: /home/kde/kdebase/konqueror/sidebar/trees/dirtree_module/dirtree_module.cpp,v
retrieving revision 1.21
diff -u -r1.21 dirtree_module.cpp
--- dirtree_module.cpp 21 Oct 2002 04:21:08 -0000 1.21
+++ dirtree_module.cpp 21 Feb 2003 22:41:42 -0000
@@ -29,7 +29,7 @@
KonqSidebarDirTreeModule::KonqSidebarDirTreeModule( KonqSidebarTree * parentTree )
- : KonqSidebarTreeModule( parentTree ), m_dirLister(0L), m_topLevelItem(0L), m_pProps(0L)
+ : KonqSidebarTreeModule( parentTree ), m_dirLister(0L), m_topLevelItem(0L)
{
// Used to be static...
s_defaultViewProps = new KonqPropsView(
@@ -40,7 +40,6 @@
KonqSidebarDirTreeModule::~KonqSidebarDirTreeModule()
{
- delete m_pProps;
delete s_defaultViewProps;
delete m_dirLister;
}
@@ -163,6 +162,9 @@
{
m_dirLister = new KDirLister( true );
m_dirLister->setDirOnlyMode( true );
+ KonqPropsView props(tree()->part()->parentInstance(), s_defaultViewProps);
+ props.enterDir(item->externalURL());
+ m_dirLister->setShowingDotFiles( props.isShowingDotFiles() );
connect( m_dirLister, SIGNAL( newItems( const KFileItemList & ) ),
this, SLOT( slotNewItems( const KFileItemList & ) ) );
@@ -178,13 +180,6 @@
this, SLOT( slotRedirection( const KURL &, const KURL & ) ) );
}
- if ( !m_pProps ) // created on demand
- {
- // Create a properties instance for this view
- //m_pProps = new KonqPropsView( KonqSidebarTreeFactory::instance(), s_defaultViewProps );
- m_pProps = new KonqPropsView(tree()->part()->parentInstance(), s_defaultViewProps );
- }
-
if ( !item->isTopLevelItem() &&
static_cast<KonqSidebarDirTreeItem *>(item)->hasStandardIcon() )
{
@@ -203,23 +198,9 @@
// This causes a reparsing, but gets rid of the trailing slash
KURL url( item->externalURL().url(-1) );
- // Check for new properties in the new dir
- // newProps returns true the first time, and any time something might
- // have changed.
- /*bool newProps = */m_pProps->enterDir( url );
- m_dirLister->setShowingDotFiles( m_pProps->isShowingDotFiles() );
-
if (tree()->isOpeningFirstChild()) m_dirLister->setAutoErrorHandlingEnabled(false,0);
else m_dirLister->setAutoErrorHandlingEnabled(true,tree());
m_dirLister->openURL( url, true /*keep*/ );
-
-#if 0
- if ( newProps )
- {
- // See the other parts
- m_pProps->applyColors( viewport() );
- }
-#endif
}
void KonqSidebarDirTreeModule::slotNewItems( const KFileItemList& entries )
Index: dirtree_module.h
===================================================================
RCS file: /home/kde/kdebase/konqueror/sidebar/trees/dirtree_module/dirtree_module.h,v
retrieving revision 1.6
diff -u -r1.6 dirtree_module.h
--- dirtree_module.h 23 Jan 2002 23:46:40 -0000 1.6
+++ dirtree_module.h 21 Feb 2003 22:41:42 -0000
@@ -70,7 +70,6 @@
KonqSidebarTreeTopLevelItem * m_topLevelItem;
KonqPropsView * s_defaultViewProps;
- KonqPropsView * m_pProps;
};
["dirtree2.diff" (text/x-diff)]
Index: dirtree_module.cpp
===================================================================
RCS file: /home/kde/kdebase/konqueror/sidebar/trees/dirtree_module/dirtree_module.cpp,v
retrieving revision 1.21
diff -u -r1.21 dirtree_module.cpp
--- dirtree_module.cpp 21 Oct 2002 04:21:08 -0000 1.21
+++ dirtree_module.cpp 21 Feb 2003 22:50:58 -0000
@@ -29,19 +29,12 @@
KonqSidebarDirTreeModule::KonqSidebarDirTreeModule( KonqSidebarTree * parentTree )
- : KonqSidebarTreeModule( parentTree ), m_dirLister(0L), m_topLevelItem(0L), m_pProps(0L)
+ : KonqSidebarTreeModule( parentTree ), m_dirLister(0L), m_topLevelItem(0L)
{
- // Used to be static...
- s_defaultViewProps = new KonqPropsView(
- tree()->part()->parentInstance(),0);
-
- //KonqSidebarTreeFactory::instance(), 0L );
}
KonqSidebarDirTreeModule::~KonqSidebarDirTreeModule()
{
- delete m_pProps;
- delete s_defaultViewProps;
delete m_dirLister;
}
@@ -178,13 +171,6 @@
this, SLOT( slotRedirection( const KURL &, const KURL & ) ) );
}
- if ( !m_pProps ) // created on demand
- {
- // Create a properties instance for this view
- //m_pProps = new KonqPropsView( KonqSidebarTreeFactory::instance(), s_defaultViewProps );
- m_pProps = new KonqPropsView(tree()->part()->parentInstance(), s_defaultViewProps );
- }
-
if ( !item->isTopLevelItem() &&
static_cast<KonqSidebarDirTreeItem *>(item)->hasStandardIcon() )
{
@@ -203,23 +189,9 @@
// This causes a reparsing, but gets rid of the trailing slash
KURL url( item->externalURL().url(-1) );
- // Check for new properties in the new dir
- // newProps returns true the first time, and any time something might
- // have changed.
- /*bool newProps = */m_pProps->enterDir( url );
- m_dirLister->setShowingDotFiles( m_pProps->isShowingDotFiles() );
-
if (tree()->isOpeningFirstChild()) m_dirLister->setAutoErrorHandlingEnabled(false,0);
else m_dirLister->setAutoErrorHandlingEnabled(true,tree());
m_dirLister->openURL( url, true /*keep*/ );
-
-#if 0
- if ( newProps )
- {
- // See the other parts
- m_pProps->applyColors( viewport() );
- }
-#endif
}
void KonqSidebarDirTreeModule::slotNewItems( const KFileItemList& entries )
Index: dirtree_module.h
===================================================================
RCS file: /home/kde/kdebase/konqueror/sidebar/trees/dirtree_module/dirtree_module.h,v
retrieving revision 1.6
diff -u -r1.6 dirtree_module.h
--- dirtree_module.h 23 Jan 2002 23:46:40 -0000 1.6
+++ dirtree_module.h 21 Feb 2003 22:50:58 -0000
@@ -68,9 +68,6 @@
KURL m_selectAfterOpening;
KonqSidebarTreeTopLevelItem * m_topLevelItem;
-
- KonqPropsView * s_defaultViewProps;
- KonqPropsView * m_pProps;
};
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic