Commit Graph

46 Commits

Author SHA1 Message Date
Léa Saviot
9f018eb9d9 [escher/view] setFrame and layoutSubviews can be forced 2020-02-12 15:13:15 +01:00
Léa Saviot
f85658f5e6 [escher/view] Inline some view methods 2020-02-12 15:13:15 +01:00
Émilie Feral
cef106b23d [escher] Avoid unnecessary relayouts 2019-04-12 15:16:52 +02:00
Lionel Debroux
ddebc06fa5 [escher] Move View's destructor, and several other methods, to the header, so that the compiler can leverage its prior knowledge of the fact that the destructor is trivial (noticed by disassembling the code) to greatly optimize derived classes' destructors.
Signed-off-by: Lionel Debroux <lionel_debroux@yahoo.fr>
2018-10-23 11:49:09 +02:00
Léa Saviot
43e81a6fb3 [escher] setFrame marks as dirty the olf frame minus the new frame.
Change-Id: I0658551541971f9f36a60ef87380f55d7ff148b8
2018-04-25 15:21:06 +02:00
Léa Saviot
ce056e085b [escher] Remove View::frame(), create TextCursorView::frame()
Change-Id: I69c1aa5e94d93d2832564040abcca62bddc377ae
2018-04-23 11:34:00 +02:00
Léa Saviot
53e7f6ea44 [escher] Get a View's frame.
Change-Id: I9fbcf2fb8db5f735df5c852762dc8645c0358683
2018-01-15 11:58:01 +01:00
Émilie Feral
bc78a0b19e [escher] Add a method in view: relativePointForPointInView 2018-01-04 15:48:06 +01:00
Émilie Feral
c189876673 Correct typo: initiate -> initialize
Change-Id: I2282bf4df87094679135176555ac18d9678de0b4
2017-08-25 11:20:49 +02:00
Émilie Feral
53f4fd0b06 [escher] Reset superview when a modal view is dismissed
Change-Id: I2d3ee97f7ade486f5cf8ba16851866d60dd6cdb6
2017-05-24 15:32:26 +02:00
Émilie Feral
9181e7cf5d [escher] In view, reinit subviews' superview at destruction
Change-Id: I5d131900ebc5b5ba18171a41c7bd61754770d8fd
2017-05-24 14:38:49 +02:00
Émilie Feral
50aacc79ec [escher] Create dynamic view controller
Change-Id: Ic8fe6d095666aa7af76c8d328b0bf83342a09453
2017-04-20 12:11:59 +02:00
Émilie Feral
8f1d37c28c [escher] Add a cursor to text fields
Change-Id: Ib4a80a3c6d4b5d76cb56645275e8ecc6d69528ca
2017-03-08 15:42:14 +01:00
Émilie Feral
a1b5d3d363 [escher] Delete childless view and implement it as default view
Change-Id: I545c8270fc8235ee578b2237361df50c919d0b61
2016-10-18 09:41:43 +02:00
Émilie Feral
76c99f8944 [escher] In view, add a method to get the minimal size to be displayed
Change-Id: Idbca819dc461c60b122b97c6eb2e32ebf383cabe
2016-10-13 09:37:56 +02:00
Romain Goyet
020d0cc0a8 [escher] Don't set the frame if it's already the good one
Change-Id: Ie862b41a3863ffb363de9d21fe86c99e33e16dab
2016-10-04 17:06:59 +02:00
Romain Goyet
77abebfcc6 [escher] Add View::setSize
Change-Id: I8eb9a4423752d1a2065efac15cdcaafb72a50932
2016-10-04 17:05:12 +02:00
Romain Goyet
96c764e5f0 [Escher] Sanity check
Change-Id: I67881d8b61e3fa5044f2bef14082352db7f4faf5
2016-10-03 11:20:54 +02:00
Romain Goyet
c2781748fd [Escher] Remove C++ init order warnings
Change-Id: I0c14c8f9c5d702e0ace6229b48ff6e117e2b6937
2016-09-15 20:39:26 +02:00
Émilie Feral
c1c59ae72f [Escher] Clean up
Change-Id: Ie7a05ddf5e401dd9ece1108b9300aa3e3c107d0f
2016-09-13 17:05:48 +02:00
Émilie Feral
f87dbaaa4e [Escher] handle redrawing of overlapping sister views
Change-Id: I974c77f644834807bb206666748d2392c22fc516
2016-09-13 16:46:36 +02:00
Romain Goyet
5de28e01db Migrate Kandinsky to C++
Change-Id: I2752a8db84ad0bb817119cf6c2993c1622621150
2016-07-21 13:42:32 +02:00
Romain Goyet
0843fcd62c Kandinsky: Use a KDContext
Change-Id: I91055c7b59586b0dec08a426a9c617a12d8128dc
2016-07-05 10:36:48 +02:00
Romain Goyet
d39e64f596 Escher: Add a comment regarding consecutive setFrame calls
Change-Id: I2a31733a25495d39cb1e03734b6d1588a9c1bca2
2016-06-21 09:45:38 +02:00
Romain Goyet
ee04687dcc Escher: Use the proper clipping rect
Change-Id: I7fa6708666a35280da54d3f4d0ef87ab636de348
2016-06-21 09:45:29 +02:00
Romain Goyet
a0d7e2243f Escher: Rect-based dirty tracking
Change-Id: I798dd04f4b36042429105e2ccdf7cd5df554bedf
2016-06-20 15:03:59 +02:00
Romain Goyet
0643425df1 Escher: View cleanup
Change-Id: I9143c3d979515c742f99a7f169fbf04bf9d5e731
2016-06-20 10:42:42 +02:00
Romain Goyet
a83b02a3c2 Escher: Get rid of storeSubviewAtIndex
Change-Id: I0e428081caae3ead5b6e6dc16878e5188a3627c1
2016-06-20 10:33:35 +02:00
Romain Goyet
bfaa6109b4 Kandinsky: KDDrawingArea uses an origin and a clipping rect
Change-Id: Iee99bc0ce12f1c2f675f7ccb6edab579b62eb77c
2016-06-15 15:43:40 +02:00
Romain Goyet
dc34ce10d2 Escher: Fix absoluteDrawingArea
It needed to compute the absoluteOrigin independently

Change-Id: I5aadf4f03da1af965285fc5ae675ddcfbcd34ed0
2016-06-15 14:47:05 +02:00
Romain Goyet
f466ff0b34 Escher: Make m_superview protected
Change-Id: I1f04f007ff338a9957eef691a6eb5031bb58655e
2016-06-14 13:51:22 +02:00
Romain Goyet
93ca2f6475 Escher: Use dirty-tracking for View::redraw
Change-Id: I95da4eee9218784744ac4abc53328d3f537bede6
2016-06-09 16:37:25 +02:00
Romain Goyet
4a1497e659 Escher: Replace View::isOnScreen by View::window
Change-Id: Ic3cb9630653dfbd54e2382a654d6531ba5485287
2016-06-01 11:32:25 +02:00
Romain Goyet
97be08027f Escher: Add more attributes when logging views
Change-Id: Ic8632e7fbfcaba143f7ff0ea4965f6a34948f041
2016-05-27 12:17:51 +02:00
Romain Goyet
8f30223aab Escher: Add ESCHER_VIEW_LOGGING
Change-Id: Id0b588069839f9b1d2330eae55a7fd345740cf1b
2016-05-27 12:08:00 +02:00
Romain Goyet
5f2f39d0d9 Escher: const-correctness for View
Change-Id: I78efaeff9911413716e669b92affa7ae4f388776
2016-05-26 18:34:18 +02:00
Romain Goyet
095901a7ca Escher: TabViewController is working!
Change-Id: I4aa730abbf1d7034d2fcbc40416dcb84076a347b
2016-05-26 12:44:41 +02:00
Romain Goyet
b79b7b5133 Escher: Adding Window, ViewController and TabViewController
Change-Id: I6a13fe95e846cfcc43f783e8b4d88ea4ad9ee585
2016-05-26 12:42:23 +02:00
Romain Goyet
da93ac6dfb View don't explicitely store their subviews
Change-Id: I54c1d60982d51d6fb35517fabde4d7b6056f4ea3
2016-05-26 12:30:50 +02:00
Romain Goyet
979a728417 Merge "Kandinsky: Introduce KDSetDrawingArea" 2016-04-25 14:05:09 +02:00
Romain Goyet
40bd023132 Merge "Escher: Redrawing should be done with redraw." 2016-04-25 14:04:22 +02:00
Romain Goyet
74c3f74003 Kandinsky: Introduce KDSetDrawingArea
This restricts the drawing area and sets the drawing origin

Change-Id: I7911338ade6665a8be3b180912339da2430b0672
2016-04-25 14:04:14 +02:00
Romain Goyet
e1dca80947 Escher: Redrawing should be done with redraw.
Change-Id: I7aee77886f1b7362b06e7aca3abab9c93803eed0
2016-04-25 14:02:24 +02:00
Romain Goyet
61854d118e Kandinsky: Add KDRectIntersect and update KDRectIntersection
One gives a boolean, the other the actual KDRect

Change-Id: I5a2e6d1110f0ad111ac2f3a46dcd072e72ea786d
2016-04-25 14:01:51 +02:00
Romain Goyet
f35a93198d Escher: Improve the View logic and add some comments
Change-Id: I9d6f0b1b8652ef10ea4395dccb45785f3e1a0737
2016-04-25 13:59:13 +02:00
Romain Goyet
a21f201cc0 Escher: Adding a GUI toolkit
Change-Id: I9c78cc1afdd35968110484c3e3782c866b88c671
2016-04-12 18:47:36 +02:00