Created attachment 91209 [details] Form with a tablecontrol. Try to hide a column while editing the form. Open the attached database. Open the form for editing. Try to hide a column of the tablecontrol with the context-menue of the mouse. There isn't any possibility for hiding a column while editing a form. This possibility has been gone since LO 3.6. Tested it with 3.0.0.0beta1 as the first version I have installed. With LO 3.5.7.2 and all other earlier versions this works. Note: This bug appears at the same time as bug54021.
Created attachment 91210 [details] Hide columns while editing a form is possible up to LO 3.5
Created attachment 91211 [details] Hide columns while editing a form is not possible since LO 3.6
I confirm it happens on 4.2.6.3. However, after you open a column properties window from the form editor and then close it, menu entry for "Hide column" appears in the context menu.
(In reply to senya from comment #3) > However, after you open a column properties window from the form editor and > then close it, menu entry for "Hide column" appears in the context menu. Could confirm "Hide Column" appears after opening column properties. It seems to be not the same context menu. There is also "Column Width" in the menu, which appears after opening the column properties.
Results from bibisect-43all: d3f11a2232b85bc3ab3e69000f571c0eba1930fd is the first bad commit commit d3f11a2232b85bc3ab3e69000f571c0eba1930fd Author: Bjoern Michaelsen <bjoern.michaelsen@canonical.com> Date: Wed May 2 19:14:52 2012 +0200 source-hash-0bbf79005a697c6781047c01f05eb660836a18e1 commit 0bbf79005a697c6781047c01f05eb660836a18e1 Author: Stephan Bergmann <sbergman@redhat.com> AuthorDate: Mon Apr 23 11:47:45 2012 +0200 Commit: Stephan Bergmann <sbergman@redhat.com> CommitDate: Mon Apr 23 11:47:45 2012 +0200 Do not fail for legacy rdb that only contains root key # bad: [423a84c4f7068853974887d98442bc2a2d0cc91b] source-hash-c15927f20d4727c3b8de68497b6949e72f9e6e9e # good: [65fd30f5cb4cdd37995a33420ed8273c0a29bf00] source-hash-d6cde02dbce8c28c6af836e2dc1120f8a6ef9932 git bisect start 'latest' 'oldest' # bad: [e02439a3d6297a1f5334fa558ddec5ef4212c574] source-hash-6b8393474974d2af7a2cb3c47b3d5c081b550bdb git bisect bad e02439a3d6297a1f5334fa558ddec5ef4212c574 # bad: [8f4aeaad2f65d656328a451154142bb82efa4327] source-hash-1885266f274575327cdeee9852945a3e91f32f15 git bisect bad 8f4aeaad2f65d656328a451154142bb82efa4327 # good: [369369915d3582924b3d01c9b01167268ed38f3b] source-hash-45295f3cdceb4c289553791071b5d7f4962d2ec4 git bisect good 369369915d3582924b3d01c9b01167268ed38f3b # bad: [6fce03a944bf50e90cd31e2d559fe8705ccc993e] source-hash-47e4a33a6405eb1b5186027f55bd9cb99b0c1fe7 git bisect bad 6fce03a944bf50e90cd31e2d559fe8705ccc993e # bad: [8a39227e344637eb7154a10ac825d211e64d584c] source-hash-f5080ebb7022c9f5d7d7fdca4fe9d19f9bb8cabf git bisect bad 8a39227e344637eb7154a10ac825d211e64d584c # good: [e8bc60acad752e284db73fc4d8ad383ac055361c] source-hash-7e6e16ba6de2d3ef2b130d1ad5ffeabfdb37918e git bisect good e8bc60acad752e284db73fc4d8ad383ac055361c # bad: [e1ec404400a4c6531a5d49d89631d1acc599071d] source-hash-5708f2bfa70db0479ddbf9b454329cd81e0f509d git bisect bad e1ec404400a4c6531a5d49d89631d1acc599071d # good: [894d6fd8932770422f37b8f562717c846fef6a1b] source-hash-61d78aca81f08ac3a0f9eb65799d04d56fbad312 git bisect good 894d6fd8932770422f37b8f562717c846fef6a1b # bad: [54177448b4716be474746c4a676f39d8038caf03] source-hash-fd58025dc7379126738cf73908ec10e809348e6a git bisect bad 54177448b4716be474746c4a676f39d8038caf03 # bad: [d3f11a2232b85bc3ab3e69000f571c0eba1930fd] source-hash-0bbf79005a697c6781047c01f05eb660836a18e1 git bisect bad d3f11a2232b85bc3ab3e69000f571c0eba1930fd # first bad commit: [d3f11a2232b85bc3ab3e69000f571c0eba1930fd] source-hash-0bbf79005a697c6781047c01f05eb660836a18e1
Adding self to CC if not already on
On pc Debian x86-64 with master sources updated yesterday, I could reproduce this. The problem is there: 991 Reference< XRowSet > xDataSource(xColumns->getParent(), UNO_QUERY); 992 Reference< XChild > xConn(::dbtools::getConnection(xDataSource),UNO_QUERY); 993 if (xConn.is()) ... xConn returns nothing. see http://opengrok.libreoffice.org/xref/core/dbaccess/source/ui/browser/sbagrid.cxx#992 That's because: 331 Reference< XConnection> getConnection(const Reference< XRowSet>& _rxRowSet) throw (RuntimeException) 332 { 333 Reference< XConnection> xReturn; 334 Reference< XPropertySet> xRowSetProps(_rxRowSet, UNO_QUERY); 335 if (xRowSetProps.is()) 336 xRowSetProps->getPropertyValue("ActiveConnection") >>= xReturn; 337 return xReturn; 338 } line 336 returns nothing see http://opengrok.libreoffice.org/xref/core/connectivity/source/commontools/dbtools.cxx#331 Opening column properties calls lcl_connectRowSet, #0 dbtools::lcl_connectRowSet (_rxRowSet=uno::Reference to (frm::ODatabaseForm *) 0x329a108, _rxContext=uno::Reference to (cppu::ComponentContext *) 0x33a1dd0, _bSetAsActiveConnection=true, _bAttachAutoDisposer=false) at /home/julien/compile-libreoffice/libreoffice/connectivity/source/commontools/dbtools.cxx:346 #1 0x00002aaac94c3af0 in dbtools::ensureRowSetConnection (_rxRowSet=uno::Reference to (frm::ODatabaseForm *) 0x329a108, _rxContext=uno::Reference to (cppu::ComponentContext *) 0x33a1dd0, _bUseAutoConnectionDisposer=false) at /home/julien/compile-libreoffice/libreoffice/connectivity/source/commontools/dbtools.cxx:468 #2 0x00002aaae35f0cd6 in pcr::FormComponentPropertyHandler::impl_ensureRowsetConnection_nothrow (this=0x398c240) at /home/julien/compile-libreoffice/libreoffice/extensions/source/propctrlr/formcomponenthandler.cxx:2413 #3 0x00002aaae35f05e0 in pcr::FormComponentPropertyHandler::impl_initFieldList_nothrow (this=0x398c240, _rFieldNames=std::__debug::vector of length 0, capacity 0) at /home/julien/compile-libreoffice/libreoffice/extensions/source/propctrlr/formcomponenthandler.cxx:2357 #4 0x00002aaae35eaede in pcr::FormComponentPropertyHandler::describePropertyLine (this=0x398c240, _rPropertyName="DataField", _rxControlFactory=uno::Reference to (pcr::OPropertyBrowserController *) 0x3964118) at /home/julien/compile-libreoffice/libreoffice/extensions/source/propctrlr/formcomponenthandler.cxx:1378 #5 0x00002aaae364309c in pcr::OPropertyBrowserController::describePropertyLine (this=0x39640d0, _rProperty=..., _rDescriptor=...) at /home/julien/compile-libreoffice/libreoffice/extensions/source/propctrlr/propcontroller.cxx:1142 #6 0x00002aaae3643890 in pcr::OPropertyBrowserController::UpdateUI (this=0x39640d0) at /home/julien/compile-libreoffice/libreoffice/extensions/source/propctrlr/propcontroller.cxx:1227 #7 0x00002aaae3641ff6 in pcr::OPropertyBrowserController::impl_rebindToInspectee_nothrow (this=0x39640d0, _rObjects=std::__debug::vector of length 1, capacity 1 = {...}) at /home/julien/compile-libreoffice/libreoffice/extensions/source/propctrlr/propcontroller.cxx:967 #8 0x00002aaae363e864 in pcr::OPropertyBrowserController::inspect (this=0x39640d0, _rObjects=uno::Sequence of length 1 = {...}) at /home/julien/compile-libreoffice/libreoffice/extensions/source/propctrlr/propcontroller.cxx:284 #9 0x00002aaad1081561 in FmPropBrw::implSetNewSelection (this=0x3614920, _rSelection=std::__debug::set with 1 elements = {...}) at /home/julien/compile-libreoffice/libreoffice/svx/source/form/fmPropBrw.cxx:397 #10 0x00002aaad1082e5a in FmPropBrw::StateChanged (this=0x3614920, nSID=10636, eState=DEFAULT, pState=0x350b470) at /home/julien/compile-libreoffice/libreoffice/svx/source/form/fmPropBrw.cxx:640 #11 0x00002aaaaeb4194b in SfxStateCache::SetState_Impl (this=0x33a1640, eState=DEFAULT, pState=0x350b470, bMaybeDirty=false) at /home/julien/compile-libreoffice/libreoffice/sfx2/source/control/statcach.cxx:429 #12 0x00002aaaaeb4150b in SfxStateCache::SetState (this=0x33a1640, eState=DEFAULT, pState=0x350b470, bMaybeDirty=false) at /home/julien/compile-libreoffice/libreoffice/sfx2/source/control/statcach.cxx:339 #13 0x00002aaaaeaf4361 in SfxBindings::UpdateControllers_Impl (this=0x34f6cf0, pIF=0x3175040, rFound=..., pItem=0x350b470, eState=SET) at /home/julien/compile-libreoffice/libreoffice/sfx2/source/control/bindings.cxx:1487 #14 0x00002aaaaeaf0406 in SfxBindings::Update_Impl (this=0x34f6cf0, pCache=0x3280300) at /home/julien/compile-libreoffice/libreoffice/sfx2/source/control/bindings.cxx:433 #15 0x00002aaaaeaf4aad in SfxBindings::NextJob_Impl (this=0x34f6cf0, pTimer=0x32de980) at /home/julien/compile-libreoffice/libreoffice/sfx2/source/control/bindings.cxx:1619 so "hidden column" can appear then. Lionel: thought you might be interested in this one. It seems, form related bugs have a similar root cause.
Work-around: open the properties of any column, or swtich to non-design mode and back to design mode. Julien, thanks for the analysis. Feel free to take inspiration from the fix to fix the other similar bugs :) When trying to test, take care of the above work-around, which might make you think it is fixed when it is not :)
Thank you Lionel for your feedback and your fix! :-) (http://cgit.freedesktop.org/libreoffice/core/commit/?id=71ba72260ea9526bbe2003f669bb4f006a907504)
Lionel Elie Mamane committed a patch related to this issue. It has been pushed to "libreoffice-4-4": http://cgit.freedesktop.org/libreoffice/core/commit/?id=6d82d8b51776b349ff58fc15d269840755859d02&h=libreoffice-4-4 tdf#73059 isDBReadOnly ensure connection before trying to retrieve it It will be available in 4.4.1. The patch should be included in the daily builds available at http://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More information about daily builds can be found at: http://wiki.documentfoundation.org/Testing_Daily_Builds Affected users are encouraged to test the fix and report feedback.
Lionel Elie Mamane committed a patch related to this issue. It has been pushed to "libreoffice-4-3": http://cgit.freedesktop.org/libreoffice/core/commit/?id=605c8d7f4c7b5b431747ced10243e01529b31777&h=libreoffice-4-3 tdf#73059 isDBReadOnly ensure connection before trying to retrieve it It will be available in 4.3.7. The patch should be included in the daily builds available at http://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More information about daily builds can be found at: http://wiki.documentfoundation.org/Testing_Daily_Builds Affected users are encouraged to test the fix and report feedback.
Migrating Whiteboard tags to Keywords: (bibisected) [NinjaEdit]