> On Sept. 11, 2014, 10:19 p.m., Aleix Pol Gonzalez wrote: > > Why is the component responsible for defining how it's going to be visually > > integrated with the host application? > > > > Do we get to hit the scrollbar if the component doesn't have a margin and > > it's by the screen's border? > > Hugo Pereira Da Costa wrote: > > Why is the component responsible for defining how it's going to be > visually integrated with the host application? > > Technically, the widget style is now defining how the component should > appear visually, and not the component itself. > Also, because KateView is a composite widget, it is not possibly for the > host application to achieve the same (you cannot put a frame around the > 'contents' only, it would have to surround the scollbars, findpanel, top and > bottom message widgets, etc. > > Also, see bug report, if no frame is rendered there is no 'native' visual > indication of focus on the editable contents, even if widget style supports > it, and no way (that I know of) to enforce that from the host application. > > > Do we get to hit the scrollbar if the component doesn't have a margin > and it's by the screen's border? > > Depends on the widet style > - yes with oxygen > - no with breeze > Due to whether the style asks to draw the frame around the contents only > (oxygen) or around contents+scrollbar (breeze). > (QStyle::SH_ScrollView_FrameOnlyAroundContents) > > This is also consistent with any QScrollAbstractArea and can be > considered a bug (or regression) of the breeze style, not of the component. > (I guess I'll try to adress that in breeze) > > Admittingly, the current class is missing a 'setFrameStyle()' method (or > something similar) to disable the frame around contents, as is the case for > any QFrame. > > Opinions welcome > > Hugo
I like the reasoning, thanks for explaining Hugo! :) - Aleix ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://git.reviewboard.kde.org/r/120147/#review66298 ----------------------------------------------------------- On Sept. 11, 2014, 9:25 p.m., Hugo Pereira Da Costa wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > https://git.reviewboard.kde.org/r/120147/ > ----------------------------------------------------------- > > (Updated Sept. 11, 2014, 9:25 p.m.) > > > Review request for KDE Frameworks and Christoph Cullmann. > > > Bugs: 158379 > https://bugs.kde.org/show_bug.cgi?id=158379 > > > Repository: ktexteditor > > > Description > ------- > > Short description is in title and bug report. > The idea is to implement sunken frame in KTextEditor::View (kate, kwrite, > etc.) with 'native' focus and mouse-over effects for styles that support it. > This makes KateView look again like QTextEdit > > Some changes are needed to the layouting in order to accomodate a frame > either around the contents only, or around contents+scrollbar, depending on > style hint. > > The detail changes are: > - Use QGridLayout for setting up View layout > - Added QSpacerItems in order to properly implement frame around edition > area. > - properly account for whether style requires frame around contents only, or > around contents + scrollbars > - Call style primitive (CE_ShapedFrame) in order to render a frame around the > said area, with proper mouse-over and focus set. > - Adjust scrollbar background based on whether frame must be drawn around > contents only, or scrollbars+contents > - Force update of widget and scrollbars on focusIn and focusOut events > > > Diffs > ----- > > src/view/kateview.h 624072e > src/view/kateview.cpp 08b4d28 > > Diff: https://git.reviewboard.kde.org/r/120147/diff/ > > > Testing > ------- > > Tested with Breeze, Oxygen, Virtuality, and fusion. > The first three have focus and mouse-over effect. > The last one does not, but still, the "correct" frame is rendered, with > proper margins. > > Tested in Kate, KWrite and KDevelop. > Screenshots attached with kate. > > > File Attachments > ---------------- > > before > > https://git.reviewboard.kde.org/media/uploaded/files/2014/09/11/d8a70e3b-e5ea-4fae-aeee-df073c801d86__kate-old.png > after (breeze) > > https://git.reviewboard.kde.org/media/uploaded/files/2014/09/11/b9968e2b-9104-4022-ab7d-e89b2ce73116__kate-new-breeze.png > after (oxygen) > > https://git.reviewboard.kde.org/media/uploaded/files/2014/09/11/1be8a8d2-053d-4002-9d83-ad2afd129042__kate-new-oxygen.png > > > Thanks, > > Hugo Pereira Da Costa > >
_______________________________________________ Kde-frameworks-devel mailing list Kde-frameworks-devel@kde.org https://mail.kde.org/mailman/listinfo/kde-frameworks-devel